>  기사  >  웹 프론트엔드  >  hashchangebroker 및 statehashable_jquery에 대한 보충 문서

hashchangebroker 및 statehashable_jquery에 대한 보충 문서

WBOY
WBOY원래의
2016-05-16 18:03:481050검색

url hash: URL에서 # 번호 뒤의 섹션은 일반적으로 HTML 페이지에서 앵커 포인트를 찾는 데 사용됩니다. 해시가 변경된 페이지는 새로 고쳐지지 않으므로 해시는 Gmail의 접근 방식과 같은 Ajax 애플리케이션에서 스크립트 실행 상태를 저장하는 데 사용됩니다.

jquery 해시 변경 이벤트 플러그인: Internet Explorer 8, Firefox 3.6 및 Chrome 5에서는 이미 window.onhashchange 이벤트를 제공하지만 이전 버전의 브라우저에는 이 이벤트가 존재하지 않습니다. 이 플러그인을 사용하세요. 해시가 변경되었는지 확인하는 타이머로, 이전 버전의 브라우저에서 hashchange 이벤트를 다시 제공할 수 있습니다.

hashchangebroker: 이전에 이 jquery 확장을 작성했는데, 이는 네 가지 메서드를 제공합니다.

$.hashchangebroker.subscribe(fragName, 핸들러)

fragName에 해당하는 해시 단락 변경 사항을 구독하고 지정된 핸들러로 전달합니다.
URL 해시는 여러 조각으로 구성됩니다. 조각 형식은 [fragName]:[state]입니다. fragName은 사용자 정의 해시 상태 이름입니다. state는 base64로 인코딩된 json 문자열입니다.
핸들러에는 사용자 정의 상태를 설명하는 json 형식 문자열이라는 하나의 매개변수 상태만 있습니다.

$.hashchangebroker.publish(hash)

이 메서드는 window.onhashchange 이벤트에 바인딩되어야 합니다. 해시를 수신하고 디코딩하여 변경된 조각을 찾은 다음 조각을 구독하는 핸들러에 전달합니다.

$.hashchangebroker.changeFrag(fragName,state)

이 메소드는 statehashable 유형에 의해 호출되며 해시의 fragName에 해당하는 조각의 상태를 수정하는 데 사용됩니다.

$.hashchangebroker.init()

이 방법은 해시를 가져와서 페이지를 새로 고친 후 게시하는 데 사용됩니다. $(document).ready에서 호출하면 됩니다. 모든 구독 메소드 뒤에 배치되어야 합니다.

statehashable: 이 위젯은 컨트롤의 상태를 URL 해시에 더 편리하게 게시하고, 컨트롤에 해당하는 해시 조각의 상태 변경을 얻고, 해당 상태 변경 이벤트.

사용법 $(dom).statehashable(); 이 메서드를 호출하면 dom 객체에 hashchange 이벤트가 추가됩니다. statehashable 객체는 컨트롤에 해당하는 해시 조각이 변경되었음을 발견하면 DOM 객체의 hashchange 이벤트를 트리거합니다.
사용법:

코드 복사 코드는 다음과 같습니다.

$(dom) .bind ("hashchange",function(e,stateObj){
// stateObj의 상태를 확인하고 dom을 해당 상태로 복원합니다
})

을 사용해야 합니다. dom 상태 변경 statechange 이벤트 트리거를 추가합니다. statehashable 객체는 이벤트를 캡처하고 hashchangebroker의changeFrag 메서드를 호출하여 해시를 수정합니다. 상태 변경 트리거 예:
$(dom).trigger("statechange",[stateName,stateValue])
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.