저는 링크를 클릭 할 때 동적으로 컨텐츠를 얻기 위해 jQuery를 사용하여 웹 사이트를 설정하는 새로운 방법을 시도해 왔습니다. 나는 모든 시간을 플레이하지 않는 링크를 클릭 할 때마다 시작하려면 내 사이트의 배경에서 노래를 갖고 있기 때문에jQuery에서 파운드 기호 (#)를 참조하는 방법은 무엇입니까?
$(document).ready(function() {
var content_loader = $('#content-loader');
$('#nav ul li a').click(function() {
$(this).closest('ul').find('li.active').removeClass('active');
$(this).parent().addClass('active');
content_loader.load('content/' + $(this).attr('data-name') + '.html');
});
content_loader.load('content/home.html');
});
나는 이런 식으로 해왔 다음은 jQuery 코드입니다 .
내가하는 두 가지 문제를 제외하고 모든 것이 잘 작동합니다.
- Google에 문의하기 링크를 클릭하면 이제 URL 끝에 #contactus가 표시됩니다. 그런 다음 페이지를 새로 고치면 내 홈페이지 콘텐츠가 다시 표시됩니다.
- 다른 사람을 내 연락처 페이지에 연결하면 동일한 문제가 발생합니다.
jQuery가 URL의 # 기호 다음에 나오는 내용을 어떻게 든 찾을 수 있는지 궁금합니다. 이 경우 홈 데이터 대신 항상로드하도록 jQuery 코드의 마지막 줄을 변경할 수 있습니다.
가능한 중복 : http://stackoverflow.com/questions/298503/how-can-you-check-for-a-hash-in-a-url-using -javascript – Marek
마크 업에 잘못된 속성을 추가하고 있습니까? .. gud ..;)가 아닙니다. – Reigel
Reigel에 동의합니다. 임의의 데이터를 요소에 저장하려는 경우 .data()를 대신 사용하십시오. – ZX12R