如何为JavaScript选项卡创建HTML书签锚点

时间:2016-09-21 15:10:53

标签: javascript jquery html css

我有一个看似简单的问题,我今天无法找到解决方案。如何创建书签(例如example.com/somepage #mymarkmark ),该书签会自动在JavaScript标签下打开元素,例如建议在w3schools上使用的标签?

我已尝试将一些id分配给构成标签的<li>元素,例如:

<li id="mybookmark"><a href="#" class="tablinks" onclick="openCity(event, 'London')">London</a></li>

甚至是锚名称,例如:

<li><a name="mybookmark" href="#" class="tablinks" onclick="openCity(event, 'London')">London</a></li>

但是我在尝试使用example.com/somepage#mybookmark时得到的最好结果只是突出显示标签,而不打开与之关联的内容(这是我真正想要的)。

我认为答案在于一些JavaScript代码,但有人可以建议它应该如何看待吗?

1 个答案:

答案 0 :(得分:1)

尝试这样的事情:

$(function () {
    $(".tab-content").hide().first().show();
    $(".yourNav li:first").addClass("active");

    $(".yourNav a").on('click', function (e) { 
    e.preventDefault();
    $(this).closest('li').addClass("active").siblings().removeClass("active");
    $($(this).attr('href')).show().siblings('.tab-content').hide();
});

    var hash = $.trim( window.location.hash );
    if (hash) $('.inner-nav a[href$="'+ hash + '"]').trigger('click');
});

基本上,您会根据.click()上的网址形式强制选项卡的#。你说你已经拥有的顶部,即标签打开正常,所有这些,它是声明var hash =的第二部分。让我知道,祝你好运。