Создание небольшого плагина jQuery

Я создал этот плагин, чтобы упростить работу над приложением.

Вот ссылка: http://jsfiddle.net/X5Squ/

Моя проблема в том, что он всегда использует только один из элементов, пожалуйста, не редактируйте данные и функции data5, поскольку они отлично работают для других частей, но мне нужна моя функция jtoggle для работы.

Любая помощь очень ценится! Благодарю.

2 ответа

В вашем плагине вы должны действовать на каждый согласованный элемент и затем возвращать все согласованные элементы для поддержания цепочки:

$.fn.jtoggle = function (addUnderline) {
 return this.each(function () {
 // Do what you need on this matched element

 });
};

Поддержание целостности означает, что мы можем делать такие вещи, как:

$(".jtoggle").jtoggle(true).addClass("xyz");


$(document).ready(function (){$('.jtoggle').jtoggle(true);});

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

$(document).ready(function (){
 $('.jtoggle').each(function(){
 $(this).jtoggle(true);
 });
});

(Это также означает, что вы можете безопасно удалить.each, который у вас есть в jtoggle)

licensed under cc by-sa 3.0 with attribution.