0

我有jQuery ui 选项卡,我希望能够从链接打开一个选项卡(在当前选项卡或页面的内部或外部)

如果链接在外部页面中并且看起来像这样,它确实有效:

http://server.com/view.php?id=130#section-2

这会正确打开选项卡“section-2”

问题是当链接在同一页面中时,它不会刷新页面(因为它只是添加了#section-2),因此不会选择选项卡。

我看到了一些在标签中使用 id 并在 jQuery 中绑定点击的答案示例,但我不能使用它,因为我的一些链接是计算出来的,我不知道它们是指向内部还是外部。

4

1 回答 1

0

将 ID“section-2-link”添加到链接到选项卡的标签(在末尾添加“-link”以避免与选项卡内容具有相同的 ID)。然后将其添加到js

jQuery(window).bind('hashchange', function () { //detect hash change
    var hash = window.location.hash.slice(1); //hash to string (= "section-2")
    jQuery('#' + hash + '-link').trigger("click");
});

这会检测到 url 上的哈希何时更改并触发单击您需要的链接(打开正确的选项卡)

于 2012-08-02T13:08:46.443 回答