Jquery Accordion:将动作设置为标题内的特定元素

时间:2010-05-17 16:52:40

标签: jquery header click accordion

默认情况下,如果我们在jQuery Accordion中有这样的标题:

<h3>
    <div class="1">TEXT</div>
    <div class="2">ICON</div>
    <div class="3">BUTTON</div>
</h3>

点击此处的任意位置,手风琴可以工作并切换下一个元素......

问题是,我们如何设置一个选项并选择一个特定元素(例如:'div',类为'1')点击它并切换手风琴。

我的意思是我不希望整个标题保持点击状态。我只是想点击一个图标或在标题内分一些东西并切换打开/关闭手风琴。

谢谢

更新1:

HTML:

<div id="testAcc">

    <h3>
        <div class="one">Text</div>
        <div class="two">Icon</div>
        <div class="three">Button</div>
    </h3>
    <div class="accBody">
        text text text text text text text text text text 
    </div>

    <h3>
        <div class="one">Text</div>
        <div class="two">Icon</div>
        <div class="three">Button</div>
    </h3>
    <div class="accBody">
        text text text text text text text text text text 
    </div>

</div>

JS:

$('#testAcc').accordion({
        autoHeight: false,
        header: 'h3',
        collapsible: 'ture',
});

这个代码工作正常。但我想使用像(标题:'h3&gt; .one')这样的东西,我想在标题中设置一个特定的类和元素,然后如果用户只在该元素上单击,手风琴将打开或关闭... < / p>

1 个答案:

答案 0 :(得分:0)

您可以return false使用单击处理程序对您不希望手风琴切换效果的元素进行操作,如下所示:

$('#testAcc').accordion({
  autoHeight: false,
  header: 'h3',
  collapsible: true
});
$("#testAcc .two, #testAcc .three").click(function() {
  return false;
});
​

You can see a working demo here