destroy, unstroy
Можете подсказать, как реализуются данные методы JQuery плагинов. Как лучше делать.
Пытался реализовать несколько раз, но понимания как это делать не приходит и из-за этого возникают проблемы. |
Алексей Петрович,
destroy -- метод удаления плагина, удаляются элементы созданные плагином и обработчики, что удалить с помощью .remove() или off() перечислить самому |
Что делает off()?
А если отключать обработчик событий, к примеру on('click') ну или другой, а пользовательские обработчики не отлучаться? И как этого можно избежать? |
Цитата:
|
$('#foo').off('click'); // удалим все обработчики события 'click' у элемента foo
Цитата из переведённой статьи. Как этого избежать? Будет ли правильным такой подход?
var $element = $('#element');
// Где то в коде
$element.on('click', function () {
$(this).trigger('myplugin.click');
});
$element.on('myplugin.click', function() {
// Что то
});
// В методе destoy
$element.off('myplugin.click');
|
Алексей Петрович,
а что функции имя сложнее дать?
var $element = $('#element');
function x() {
//
}
$element.on('click', x);
$element.off({'click' : x});
|
Блин, даже не думал об этом, не догадывался и не разу так не делал. Надо попробовать.
|
Алексей Петрович, такая конструкция здесь лишняя
$element.on('click', function () {
$(this).trigger('myplugin.click');
});
Пространство имен пишится так
var $element = $('#element');
$element.on('click.myplugin', function() {
// Что то
});
$element.off('click.myplugin');
|
Цитата:
как пример Цитата:
|
| Часовой пояс GMT +3, время: 07:03. |