2011-12-20 6 views
2

나는 해시 URL에서 ID를 얻을 수해시 URL에서 ID를 사용하여 콘텐츠를 변경하는 방법은 무엇입니까?

var integer = window.location.hash.match(/\d+/) | 0; 
alert(integer); 

를 사용하지만거야 내가 아약스 호출 후 URL을 변경 한 후 버튼을 다시 사용할 때. 변경 사항을 반영하지는 않지만 기본적으로 페이지는 동일한 상태로 유지되며 URL 만 변경됩니다.

그래서 내가 알고 싶은 것은 다시 버튼을 사용할 때 내용을 변경하는 방법입니다. 아니면 뒤로 버튼을 사용할 때 경고 상자에 정수를 표시하십시오.

http://test.php/#1 

보기 1 내가 버튼을 다시 사용하여 해당 페이지에 도착할 때

http://test.php#2 

난이 도착하면

http://test.php 

0 보여 2 표시 버튼

다시 사용하여 해당 페이지에 도착할 때 뒤로 버튼을 사용하는 페이지

답변

2

window.onhashchange 이벤트를 잡거나 HTML5의을 사용해야합니다.방법.

또는 jQuery 기록 플러그인을 사용하십시오.

+0

내가 해시 페이지가 아닌 페이지에서 test1.com과 같은 해시 페이지의 콘텐츠를 test1.com/#1 으로 변경하면 test1.com/#2에서 test1.com/#1로 변경하고 싶습니다. –

+0

@SobhagyaMohanty 네, 그렇기 때문에'window.onhashchange'를 잡고'window.location.hash'의 새로운 값에 맞는 AJAX 컨텐트를 다시로드해야합니다. – Alnitak

2

hashchange 이벤트를 처리해야합니다 (window). 같은 뭔가 :

window.onhashchange = function() { 
    // Update the page 
}; 

아니면 addEventListenerattachEvent를 사용할 수 있습니다. 그러나 IE7 이전 버전에서는 작동하지 않는다는 경고를받습니다! 이전 IE 호환성을 위해서는 this one과 같은 해킹이 필요합니다.

관련 문제