2017-04-01 257 views
1

我想要创建指向不同页面上打开选项卡的链接。 这里是我的html在选项卡的上:链接到打开的选项卡

// This are internal links 
<ul class="tabs"> 
    <li class="tab-link current" data-tab="tab-1">Tab 1</li> 
    <li class="tab-link" data-tab="tab-2">Tab 2</li> 
    <li class="tab-link" data-tab="tab-3">Tab 3</li> 
    <li class="tab-link" data-tab="tab-4">Tab 4</li> 
</ul> 

<div id="tab-1" class="tab-content current"><p>some content</p></div> 
<div id="tab-2" class="tab-content"><p>some content</p></div> 
<div id="tab-3" class="tab-content"><p>some content</p></div> 
<div id="tab-4" class="tab-content"><p>some content</p></div> 

我使用这个脚本:

$(document).ready(function(){ 
    $('ul.tabs li').click(function(){ 
    var tab_id = $(this).attr('data-tab'); 

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

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

现在我有一个外部网页上这个环节,我想重定向到页面的标签和显示标签2的内容:

<a href="tabpage.html#tab-2>Some link</a> 

这不行,任何人都可以帮我吗?也许在a元素中使用onclick()?

回答

2

阅读散列在URL时,页面加载并触发相应<li>

喜欢的东西点击:

$(document).ready(function() { 
    // your existing tabs click listener 
    $('ul.tabs li').click(function() { .... }) 
    // get hash from url 
    var hash = location.hash; 
    // check if tab matching hash exists 
    if (hash && $(hash).length) { 
    // now trigger click on appropriate tab 
    $('.tab-link[data-tab="' + hash.slice(1) + '"]').click();   
    } 

}) 
+0

谢谢您的回答,但..你可以给一些更多的信息是什么我必须准确地做?我还在学习:) – CliffVandyck

+0

与答案中显示的相同。只需在我的新代码后添加 – charlietfl

+0

谢谢,这对我来说非常合适! – CliffVandyck

相关问题