재로드 및 #해킹 없이 윈도우 위치를 변경할 수 있는 방법은?
저는 처음에 해시 해킹이 필수라고 생각했지만, 최근 페이스북에서 업데이트된 것으로 미루어 볼 때, 저는 다른 생각을 하고 있습니다.
원래 해시 해킹(이것이 정확한 용어인지 잘 모르겠습니다)은 위치를 변경하는 것입니다.hash, 페이지를 새로 고치지 않고 URL에 상태를 저장할 수 있습니다.그것은 구글의 앱과 페이스북, 그리고 최근 #NewTwitter에 의해 광범위하게 사용되고 있습니다.하지만 오늘 저는 만약 여러분이 크롬이나 파이어폭스와 같은 "현대적인" 브라우저를 사용한다면 페이스북에 더 이상 이 "#"이 없다는 것을 알게 되었습니다.개발자 도구와 파이어버그를 각각 사용하여 재장전이 되지 않는 것을 두 번 확인하였습니다.
스택 오버플로우에서 최소한의 검색을 통해 솔루션에 가장 가까운 것은 플래시를 사용하는 것입니다. 그러나 플래시를 사용하지 않도록 설정했고 facebook.com 은 여전히 매력적으로 작동합니다.chrome 8 dev와 firefox 4 beta의 적용 범위로 미루어 볼 때 HTML5 시대 API와 관련이 있을 수 있을지 궁금하지만 페이스북의 코드는 그들이 무엇을 했는지 알아내기 위해 디버그할 수 있는 능력이 없습니다.
이것이 제가 여기서 처음으로 하는 질문이기 때문에, 여러분 중에 이 문제를 이미 해결한 사람이 있을지 궁금합니다.
여러분 감사합니다.
추신. IE8에서는 작동하지 않습니다. IE9 베타에서는 테스트하지 않았습니다.
페이스북은 HTML5에서 history api를 사용하고 있습니다. 이 블로그 게시물을 통해 이것이 어떻게 작동하는지 알 수 있습니다.기본적으로 그들은 페이지를 다시 로드하지 않고 url을 변경하기 위해 아래와 같은 전화를 하고 있습니다.
window.history.pushState("object or string", "Title", "/new-url");
다음은 HTML5 작업 초안 스펙입니다. http://www.whatwg.org/specs/web-apps/current-work/multipage/history.html#the-location-interface
안타깝게도 IE9은 이 api를 지원하지 않습니다.크롬과 FF의 새로운 버전은 완전한 지원을 받습니다.
언급URL : https://stackoverflow.com/questions/3997181/how-could-i-change-windows-location-without-reloading-and-hack
'sourcetip' 카테고리의 다른 글
스파크 상태의 데이터 프레임 열 업데이트 (0) | 2023.10.15 |
---|---|
jQuery 1.8+를 포함하여 jQuery Contains 대소문자를 구분하지 않게 하려면 어떻게 해야 합니까? (0) | 2023.10.15 |
사용자가 웹페이지의 스크린샷을 찍는 것을 방지하는 방법은 무엇입니까? (0) | 2023.10.15 |
AngularJS - 경로 간 데이터 저장 (0) | 2023.10.15 |
구조 vs.범위의 함수 정의 (0) | 2023.10.15 |