如何从外部链接打开JQuery Accordian UI选项卡?

时间:2015-08-12 18:14:32

标签: javascript jquery html accordion jquery-ui-accordion

HTML

jQuery(document).ready(function($) {
var $accordion = $("#accordion");

$accordion.accordion();

$(".opener").on("click", function () {

var $this = $(this),
    toOpen = $this.data("panel");
    $accordion.accordion("option", "active", toOpen);

    return false;
});

JS

<a class="opener" data-panel="2" href="/new-page">THIRD SECTION</a>

这是链接:

>>> a = "thi's'"

这是一个解决方案:http://jsfiddle.net/VZ3T5/1/ 但是,当链接来自单独的页面时,当函数返回false时,它显然不起作用。

有没有人知道重定向到新页面的方法,然后完成相同的功能?我一直在寻找这个地方的答案,但迄今为止没有任何工作。感谢

1 个答案:

答案 0 :(得分:1)

你可以做的是在URL中有一个哈希或查询参数,然后你可以调用

var setPanelToHashIndex = function() {
  // Alternatively for query you can use jQuery.params('panelIndex') or similar
  var hashIndex = +window.location.hash.replace('#', '')

  jQuery('#accordion').accordion('option', 'active', hashIndex)
}

然后在页面加载时执行此操作只需使用document.ready

jQuery(setPanelToHashIndex)