在URL中使用#作为活动列表组项目

时间:2018-02-18 23:32:58

标签: javascript twitter-bootstrap accordion

我在我的网站上实现了这个设置的列表组,我想根据网址中的#激活某些标签。 (例如www.example.com/page.html#active-tab)

https://bootsnipp.com/snippets/featured/simple-vertical-tab

<script>
$(document).ready(function() {
    $("div.products-tab-menu>div.list-group>a").click(function(e) {
        e.preventDefault();
        $(this).siblings('a.active').removeClass("active");
        $(this).addClass("active");
        var index = $(this).index();
        $("div.products-tab>div.products-tab-content").removeClass("active");
        $("div.products-tab>div.products-tab-content").eq(index).addClass("active");
    });
});
</script>

我们非常感谢任何建议。

1 个答案:

答案 0 :(得分:0)

window.location.hash包含哈希字符之后(包括)哈希字符的URL部分。 从这里获取选项卡名称。

首先,每个div.products-tab>div.products-tab-content必须具有唯一的名称或类(我会给它们选项卡名称)。然后你可以写:

tabName = window.location.hash.substr(1);
$("div.products-tab>div.products-tab-content").removeClass("active");
$('div.products-tab>div.products-tab-content[name="'+tabName+'"]').addClass("active");

未经测试,但应该可以使用。