1
hashchange plugin을 사용 중입니다. URL에 hashchange를 추가하는 링크를 얻을 수는 있지만 브라우저에서 링크의 해시를 식별 할 수 없습니다.브라우저에서 해시 변경을 감지하는 방법
브라우저는 단순히 전체 해시 부분을 무시 localhost:3000/pages
로
localhost:3000/pages#?type=1
를로드합니다. 다음과 같이
JS는 ...입니다이 코드는 플러그인 문서에 데모에 제공되는 것을 근본적으로 비록
$(function(){
$(window).hashchange(function(){
var hash = location.hash;
$('.links a').each(function(){
var that = $(this);
that[ that.attr('href') === hash ? 'addClass' : 'removeClass' ]('selected');
});
})
$(window).hashchange();
});
분명히 나는 여기에서 밖으로 뭔가를 놓친 거지.
모르겠습니까? jQuery의 최신 버전에서는 기본적으로 플러그인이 필요하며, 해시 변경이 페이지를 다시로드하지 않을 때 선택한 클래스를 유지하도록 해시에 대한 모든 링크를 확인해야하는 이유는 무엇입니까? 클래스를 직접 할당 할 수 있습니다. – adeneo
이 코드를 사용하는 링크는 .load 기능을 사용하여 다른 콘텐츠를 페이지의 div에 다시로드합니다. 사람들이 앞뒤 브라우저 버튼을 사용할 수 있어야하므로 div 내용이 변경 될 때마다 순환됩니다. 사용자가 URL을 복사하여 URL에 붙여 넣을 수있게하는 것은 물론 div에 올바른 콘텐츠를로드 할 수 있습니다. – tob88
브라우저가 해시 링크를 URL 매개 변수로 인식하게되므로 선택한 클래스를 추가하는 것이 중요하지 않습니다. – tob88