как убить / сбросить работающий плагин jquery? - PullRequest
1 голос
/ 19 августа 2011

У меня есть плагин для слайдшоу, который отлично работает.В одиночку ...

У меня 3 разные кнопки на одной странице.Все они вызывают один и тот же плагин слайд-шоу jQuery и загружают слайд-шоу с разными изображениями в один и тот же разделитель (с id = "слайд-шоу")

Я удаляю слайд-шоу и его элементы из #slideshow каждый раз перед загрузкойновое слайд-шоу с новыми изображениями.

Все будет работать нормально, за исключением того, что чем больше я нажимаю на кнопки, тем сложнее становится все это, потому что плагин открывается каждый раз, и плагин путается, какие изображения показывать.

Мой вопросКак я могу полностью убить работающий плагин, чтобы новый мог загружаться с самого начала.Я безуспешно пытался выполнить API-интерфейсы empty (), die (), remove (), detach ().

Есть ли другой способ?

Спасибо.

http://muttley.freewebspace.com/slideshow/

Ответы [ 2 ]

3 голосов
/ 19 августа 2011

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

var oldDiv = $('#slideshow');
var parent = oldDiv.parent();
oldDiv.remove();
parent.append($('<div>').attr('id', 'slideshow'));
// Initialize slideshow here again

// Untested but shorter way:
$('#slideshow').replaceWith($('<div>').attr('id', 'slideshow'));
0 голосов
/ 19 августа 2011

Все зависит от плагина. Этот плагин поддерживает несколько слайд-шоу на странице? Если это так, вместо удаления содержимого #slideshow, возможно, это сработает, если вы сами замените #slideshow новым элементом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...