레코드 검색 및 선택을 허용하는 간단한 javascript AJAX 응용 프로그램이 있습니다. Selection은 location.hash를 업데이트하고 연관된 레코드 세부 정보를로드하며 이상적으로는 해시가 변경 될 때 레코드를로드합니다. 물론 부주의 한 구현으로 인해 루프 및 추가 패널 플래시가 발생할 수 있습니다.AJAX 레코드 컨텍스트에 양방향으로 location.hash 바인딩 구현
이 양방향 바인딩의 예측 가능하고 간결한 구현이 필요합니다.
한 가지 방법은 hashchange
이벤트에만 레코드를로드하는 것이며 UI에서 레코드를 선택하면 location.hash
을 설정하십시오. 이것은 가장 간결 해 보입니다 만, 이것은 구식 브라우저에서 기록 된 클릭 응답 성을 감소시킬 것이라는 점에 걱정됩니다. hashchange
shim.
또 다른 접근법은 레코드를 선택할 때 navigating
(예 :) 상태를 기록하고 hashchange
을 처리 할 때이를 지우는 것입니다. 그 내용은 this question입니다. 그러나 Back을 여러 번 빠르게 탭하는 것과 같은 특정 이벤트 시퀀스가 표시되는 콘텐츠와 URL이 일치하지 않을 수 있습니다.
이러한 문제를 해결하는 구현을 보았습니까?
문제는 정확히 동일합니까? 'History'(IE9 포함)를 지원하지 않는 클라이언트가 레코드 선택에 어떻게 응답합니까? – shannon
"2013 년 2 월 26 일에 Internet Explorer 10은 모든 Windows 7 SP1 사용자에게 다운로드 할 수있게되었습니다." - http://en.wikipedia.org/wiki/Internet_Explorer_10 Windows 8이 얼마나 나쁘고 (피할 수 있겠습니까?) 필자는 특히 IE9에서 핵심 기능을 사용하지 않는 것이 나쁜 선택이라고 생각합니다. – shannon
하지만 어쩌면 나는 당신이 제안하는 것을 이해하지 못할 수도 있습니까? – shannon