我在第 1 页上有一个带有查询字符串的链接 href="page2.html?selected=1".

我想要的是,当我单击第 1 页上的此链接时,它应该导航到第 2.html 页并使用此查询字符串值打开特定的 jquery 选项卡(使用 jquery 选项卡)?

功能如下:

$(function selectTab(indexId){
    var activeTab = location.href;
    var activeTabId = activeTab.substring(activeTab.lastIndexOf('=') + 1);
    $('#tabs').tabs('select', indexId);
})

请告诉我如何解决这个问题?

有帮助吗?

解决方案

你可以这样做,但你的变量是混合的,它只是:

$(function selectTab(){
    var activeTab = location.href;
    var activeTabId = activeTab.substring(activeTab.lastIndexOf('=') + 1);
    $('#tabs').tabs('select', activeTabId);
})

然而, ,已经有对此的内置支持,只需使用如下 URL:

page2.html?#tabPanelID

例如,如果选项卡具有以下链接 href="#tab3" 这将转到 <div id="tab3"> 那么你的网址将是 page2.html#tab3, ,查看此链接: http://jqueryui.com/demos/tabs/#tabs-3

看看它是如何直接打开演示中的第三个选项卡的?这是内置行为。

其他提示

试试这个办法......我知道这人有点长篇大论,但至少你可以看到JS标签是如何实现的每一个阶段。

添加一个告密者到您的字符串一次重新加载页面...我已经做了tab222。

然后ID您的标签内容div的我已经做了#tab_2

菜单标签的href更改为你所拥有的......

$(document).ready(function(){

  if (/tab222/.test(self.location.href)) {
    $('#p_tabs li').removeClass('active');
    $('#p_tabs li a[href="#tab_2"]').parent().addClass('active');
    $('#tab_one').removeClass('active');
    $('#tab_two').addClass('active');
  };

});

vwala!希望有所帮助。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top