我有accordion
这样的
<div id="accordion">
<h3 id="idname1">text</h3>
<div>
Text TEXT text
</div>
<h3 id="idname2">text</h3>
<div>
Text TEXT text
</div>
<h3 id="idname3">text</h3>
<div>
Text TEXT text
</div>
</div>
现在,我希望人们点击链接(位于页面顶部),然后该面板将会打开 每当我调用我的功能时,人们都会看到它
$('.myclass').click(function() {
// this is to open the right pannel
var getal = $(this).attr('id');
alert(getal); // i get the right name
$("#accordion").accordion('activate', 1);
});
我的控制台给了我这个错误
错误:对于手风琴小部件实例
,没有这样的方法'激活'
我不知道问题是什么我尝试了很多不同的东西,但都没有用。
答案 0 :(得分:23)
我认为您希望以编程方式打开手风琴窗格。如果是这样,你想要这样的东西:
$("#accordion").accordion("option", "active", 1);
(假设您正在使用jQuery UI库)
http://api.jqueryui.com/accordion/#option-active
请注意,这将打开第二个折叠式窗格,因为这些选项接受基于0的整数。 (0是第一,1是第二,等等)。所以只需确保将正确的整数传递给方法调用:)
您的代码无法运行的原因是因为jQuery UI团队刚刚删除了v1.10中的activate
方法,并特别推荐使用我提供的内容:http://jqueryui.com/upgrade-guide/1.10/#removed-activate-method-use-active-option
答案 1 :(得分:-1)
像这样激活它
$( "#accordion" ).accordion( "option", "active", 0 );
要启用/禁用为此目的使用方法。
$("#accordion" ).accordion( "enable" );
$("#accordion" ).accordion( "disable" );
在第一次使用init后使用选项对象来访问手风琴的选项。
$("#accordion").accordion( "option", "disabled", true ); // set
var x = $("#accordion").accordion( "option", "disabled"); // get
答案 2 :(得分:-2)
这应该有效,但是它不会动画:
$('.myclass').click(function () {
// this is to open the right pannel
var getal = $(this).attr('id');
alert(getal); // i get the right name
$("#accordion").accordion('option', 'active', 1);
});
您尝试在1.9.x中使用WAS但在1.10.x中删除的方法 http://api.jqueryui.com/accordion/#option-active