1

我正在使用 jquery 工具 + livequery。我有一个有 4 个元素的水平手风琴。在初始页面加载时,它们是由 PHP 脚本创建的,因此手风琴效果很好 - 第一个选项卡打开,一切正常滑动。(就像在这个例子中:http: //flowplayer.org/tools/demos/tabs/accordion-horizo​​ntal.html

我有一个计时器事件,它通过 JSON 重新加载手风琴元素。一旦发生这种情况 - 选项卡不会被激活。重新加载手风琴后,我一直在尝试附加一个 livequery 事件,但我无法弄清楚。

结构是这样的:

<div id="accordion">
<div class="accordion_element>[tab content]</div>
<div class="accordion_element>[tab content]</div>
<div class="accordion_element>[tab content]</div>
<div class="accordion_element>[tab content]</div>
</div>

我通过以下方式激活手风琴:

$("#accordion").tabs("#accordion .div_body", {
    tabs: '.img_bgr', 
    effect: 'horizontal'
});

它就像一个魅力 - 第一个选项卡被展开,其他选项卡是可点击的,并在点击时展开。然后我每分钟触发一次:

$.getJSON("accordion.php", function(json){
    $.each(json, function(key, val) {
    //-------parse json here and append each accordion_item (I empty the accordion prior)
    $('#accordion').append(accordion_item);
    });
});

所以此时我有一个漂亮的手风琴,但它没有被激活——它只是标签。

如何将实时查询事件附加到以下内容,以便它影响所有未来对#accordion 的更新?

$("#accordion").tabs("#accordion .div_body", {
    tabs: '.img_bgr', 
    effect: 'horizontal'
});

基本上我需要能够将.live(或livequery)分配给.tabs,这将控制所有点击等。

在此页面上 - http://flowplayer.org/tools/demos/tabs/accordion-horizo
​​ntal.html 想象 3 张图像 + 暴露的文本会重新加载 json 并且 .tabs 没有进一步的效果。

像这样(当然不起作用)

$("#accordion").live( '.tabs', function(){
"#accordion .div_body", {
tabs: '.img_bgr', 
effect: 'horizontal'
};
4

1 回答 1

0

你试过这个吗?

$("#accordion").livequery(function() {
  $(this).tabs("#accordion .div_body", {
    标签:'.img_bgr',
    效果:“水平”
});
于 2012-03-16T14:42:29.100 回答