Есть ли простой способ узнать, существует ли jquery аккордеон на странице ... я пытаюсь динамически создать аккордеон на основе выбора, который проходит через $ ajax, читает значения из xml, и в зависимости от выбранного файла XML строит строки make вверх аккордеон, и, наконец, добавляет его.

Я думаю, что если аккордеон уже существует на странице, и пользователь выбирает другой файл, у меня возникают проблемы с уничтожением аккордеона, очисткой HTML, добавлением новой строки, а затем созданием нового аккордеона ...

Нравится

$("#accordion").accordion('destory').html('').append(string).accordion();

Кажется, что если аккордеона уже нет, эта идея ломается .... думая, может быть, я могу просто проверить ?? спасибо за любую помощь новичку!

6
Justin 21 Янв 2013 в 23:27

2 ответа

Лучший ответ

Я подозреваю, что вы можете попробовать проверить .data().

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

Или путем проверки имени класса ui-accordion с помощью .hasClass(), который добавляется при инициализации.

var isAccordion = $("#accordion").hasClass("ui-accordion");
13
Alexander 21 Янв 2013 в 19:38

Вы можете попробовать с длиной

Подсчитайте элемент, используя .length

Или как то так

if($('#accordion').length > 0) {
    // do something
}
-1
Federico Giust 21 Янв 2013 в 19:41