jQuery 업데이트 브라우저 위치, 리디렉션하지 마십시오
문제
프로젝트를위한 일련의 기본 아코디언을 구축하고 있습니다.
우리는 그들이 정적이고 링크 가능한 페이지를 갖기를 원합니다. 그래서 우리는 각 개방 상태에 대한 대형 페이지를 만들었습니다.
예를 들어,
/Whoweare는 메인 슬라이더입니다.
하지만 우리는 /Whoweare /Whatwedo에 서브 슬라이더가 있습니다.
내가하고자하는 것은 사용자가 켜기 /Whoweare의 헤더를 클릭하면 슬라이더가 열리고 /Whoweare /Whatwedo로 업데이트되지만 실제 리디렉션은 없습니다. URL 위치는 단순히 변경되어야합니다.
사용해 보았습니다
window.location.replace($(this).attr('href'));
return false;
그러나 그것은 내가 원하는 것을 달성하지 못한 것 같습니다. 여전히 새 페이지에 다시로드됩니다.
다른 제안이 있습니까?
해결책
리디렉션 없이는 URL을 변경할 수 없습니다. 피싱 악몽입니다 (예 : 피싱 사이트에 머무르는 동안 은행의 URL을 변경하십시오).
문서 해시 만 조작 할 수 있습니다 http://domain.com/#identifier - Google, Facebook 등은 Ajax 사이트에 브라우저 기록 지원을 제공하는 방법입니다.
정확한 복제 #352343 새로 고침없이 브라우저 주소 표시 줄 변경.
업데이트: html5는 이제 허용합니다 pushState
, 그러나 동일한 도메인 내에서만.
다른 팁
확인하십시오 Ben Alman의 JQuery BBQ 플러그인
$ .BBQ.pushstate () - http://benalman.com/code/projects/jquery-bbq/examples/fragment-jquery-ui-tabs/