Javascript 检查是否存在jquery ui accordion?

Javascript 检查是否存在jquery ui accordion?,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,有没有一种简单的方法可以判断页面上是否存在jquery accordion…我正在尝试基于运行$ajax的选择动态构建accordion,从xml读取值,并根据所选的xml文件构建字符串,组成accordion,最后追加它 我认为,如果页面上已经存在accordion,并且用户选择了另一个文件,那么我在销毁accordion、清除html、附加新字符串,然后创建新accordion时遇到了问题 像 似乎如果还没有手风琴,这个想法就打破了…想也许我可以检查一下??感谢对初学者的任何帮助 我怀疑您可

有没有一种简单的方法可以判断页面上是否存在jquery accordion…我正在尝试基于运行$ajax的选择动态构建accordion,从xml读取值,并根据所选的xml文件构建字符串,组成accordion,最后追加它

我认为,如果页面上已经存在accordion,并且用户选择了另一个文件,那么我在销毁accordion、清除html、附加新字符串,然后创建新accordion时遇到了问题


似乎如果还没有手风琴,这个想法就打破了…想也许我可以检查一下??感谢对初学者的任何帮助

我怀疑您可以尝试检查
.data()

或者,使用初始化时添加的
.hasClass()
检查
ui accordion
类名

var isAccordion = $("#accordion").hasClass("ui-accordion");

你可以试试。长度

或者类似的事情

if($('#accordion').length > 0) {
    // do something
}

这看起来不错,只要您在每次有新内容时都运行它,并且代码运行时页面上存在accordion的元素。或者通过特定的ui accordion css类(如果存在),我添加它是为了完整性。对我来说,检查类的想法是检查类的
长度
,以防accordion的选择器未知,然后就可以在不知道手风琴是什么的情况下找到它ID@Alexander…成功了。事实上,第一种方法确实有效,但出于好奇,我尝试了这两种方法,他们都成功了!刚刚从上面的(OP)行中分离出.accordion('destroy'),并用您的示例添加到if中。谢谢你的帮助!
var isAccordion = $("#accordion").hasClass("ui-accordion");
if($('#accordion').length > 0) {
    // do something
}