Jquery手风琴激活不工作

jquery accordion activate does not work

本文关键字:工作 激活 手风琴 Jquery      更新时间:2023-09-26

我有一个这样的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);
});

我的控制台给我这个错误

错误:手风琴小部件实例中没有"activate"方法

我不知道是什么问题,我已经尝试了很多不同的东西,但没有一个工作

我认为您正在寻找以编程方式打开手风琴窗格。如果是这样,您需要这样的内容:

$("#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

像这样激活它

$( "#accordion" ).accordion( "option", "active", 0 );

要启用/禁用,请使用相应的方法。

$("#accordion" ).accordion( "enable" );
$("#accordion" ).accordion( "disable" );

在第一次初始化之后使用options对象访问accordion的选项。

$("#accordion").accordion( "option", "disabled", true ); // set
var x = $("#accordion").accordion( "option", "disabled"); // get

查看API http://api.jqueryui.com/accordion/

这应该可以工作,但是,它不会动画:

$('.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。但在1.10.x中被删除http://api.jqueryui.com/accordion/option-active