2012-06-28 2 views

답변

8

resize eventwindow로 전송 : 브라우저 윈도우의 크기가

을 변경하지만 백본보기의 이벤트가 뷰의에 바인딩 할 때

resize 이벤트는 window 요소로 전송 el을 사용하여 delegate을 사용하십시오. 보기의 elresize 이벤트를 가져 오지 않으므로 'resize articule': 'repositionBoards'을보기의 events에 넣는 것이 좋습니다. 당신이보기에 resize 이벤트를 취득해야하는 경우

, 당신은 window 자신을 바인딩해야합니다 : 당신이 당신의 resize 핸들러를 바인딩을 해제 할 수 있도록

initialize: (options) -> 
    $(window).on('resize', this.repositionBoards) 
remove: -> 
    $(window).off('resize', this.repositionBoards) # Clean up after yourself. 
    @$el.remove() # The default implementation does this. 
    @ 
repositionBoards: -> 
    # Use => if you need to worry about what `@` is 
    board.align() 

는 또한 remove를 추가 할 수 있습니다. 물론, view.remove()을 사용하여보기를 제거하거나 해당보기가 전체 응용 프로그램 인 경우 걱정할 필요가 없습니다.

+0

는 철저한 답변을 주셔서 감사합니다. 내 유일한 관심사는 텍스트가 그들에 입력하면 내 문서 '크기를 변경하는 것이 있습니다. 크기가 커지면 재 위치 게시판에 전화하고 싶습니다. 그러나 크기 조정이 창으로 보내지기 때문에, 이것은 나에게 좋지 않습니다. 기사 또는 div의 크기 조정과 관련된 이벤트가 있는지 알고 있습니까? 높이나 폭이 커질 때처럼 팽창 할 때. 다시 한 번 감사드립니다. –

+0

@ user1489926 :하지만 윈도우 이외의 다른 크기 조정 이벤트가 없다면 AFAIK를 어렵게 처리해야합니다. http://stackoverflow.com/q/172821/479863 –

관련 문제