2016-11-03 2 views
0

가이 코드를 사용하여 페이지 B에 대한 간단한 동적 탭 갤러리가 속성을 사용하여 페이지에 링크 :jQuery를 데이터가

$('ul.tabs li').click(function(){ 
    event.preventDefault(); 

    var tab_id = $(this).attr('data-tab'); 

    $('ul.tabs li > figcaption').removeClass('current'); 
    $('.tab-content').removeClass('current'); 

    $(this).find('figcaption').addClass('current'); 
    $("#"+tab_id).addClass('current'); 
}); 

가정하자 나는이와 페이지 B에 연결할 페이지 A의 링크가 페이지 B의 해당 탭이 활성입니다. 그 일을 어떻게 하죠? 나는 href 태그의 데이터 속성을 연구하려고 노력해 왔으며 혼란 스럽다.

감사합니다!

+2

이 page_b'처럼, 해시에 탭을 넣어 : 페이지로드 시간에 해시를 확인, 페이지 B에

<a href="page_b.html#tab3">...</a> 

: 당신은 표시 할 tab3를 원한다면, 같은 링크를 이용해 .html # tab1'. 그런 다음 B 페이지의 스크립트는'window.location.hash'를 가져와 현재 탭으로 만들 수 있습니다. – Barmar

+0

참조 http://stackoverflow.com/questions/33361536/change-url-of-the-windows-for-every-different-tab/33362303#33362303 – guest271314

+0

이것은 현재 무엇이 발생하는지 결정하는 코드입니다. $ (this) .find ('figcaption'). addClass ('current'); $ ("#"+ tab_id) .addClass ('current'); 해시를 변수에 저장해야합니까? 현재 기능을 유지하면서 구현하는 방법에 대해 다소 분실했습니다. – massanisso

답변

0

페이지 해시를 사용하여 페이지의 초기 탭을 지정하십시오.

$(document.ready(function() { 
    var hash = window.location.hash; 
    if (hash) { 
     $('ul.tabs li > figcaption, .tab-content').removeClass('current'); 
     $(hash).addClass('current'); 
     $('ul.tabs li[data-tab=' + hash.substr(1) +'] figcaption').addClass('current'); 
    } 
    ... 
}); 
+0

매력처럼 일했습니다. 고마워요! 앞으로 도움이 될 자바 스크립트의 새로운 조각! – massanisso