Итак, у меня есть набор плагинов jQuery, действительно базовый материал, но я разделяю код на плагины, потому что мне не нравится иметь огромную функцию jQuery (document) .ready(), где я храню всей логики приложения.Обнаруживать «подключенные» элементы DOM
Каждый плагин имеет «деструктор», который в основном является функцией, которую я определил в объекте прототипа плагина. Эта функция отвязывает события, используемые плагин, удаляет DOM элементов, которые были добавлены с помощью плагина и т.д.
Плагиных инициализируются так:
$('.element').plugin();
Есть ли способ, я могу получить все элементы, которые у меня есть подключаемые к ним плагины, из другого плагина, который должен заменить тело HTML, поэтому я могу назвать функцию деструктора?
Я думал хранить каждый экземпляр плагина внутри глобального массива, тогда я могу получить доступ к этому массиву из любого плагина. Но, может быть, есть лучший способ, который не использует глобальное состояние?
Когда я строй JQuery виджетов я использую [пользовательский шаблон, который я написал] (https://github.com/zzzzBov/jQuery-widget .tmpl.js/блоб/ведущий/jqwt/JQuery-widget.tmpl.js). Он включает в себя расширение '$ .expr [':']', чтобы можно было выбрать выбранные виджеты. – zzzzBov