Я играл с
jQuery в последние несколько дней, и я очень впечатлен мощью этой библиотеки.
Я до сих пор помню несколько лет назад, когда вам приходилось делать все на стороне сервера только потому, что это было проще!
Те дни прошли.
Поскольку лучший способ обучения — это испачкать руки, я покажу вам, как создать простой плагин, который я назвал ‘iconify’.
Это очень просто, и вы можете применить ту же идею для создания некоторых пользовательских плагинов.
По сути, все, что делает плагин — это берет элемент на странице и превращает его в элемент div. Затем поместите значок рядом с ним влево или вправо в зависимости от некоторых параметров.
Через опции вы также можете привязать некоторые события к значку (например, щелчок или двойной щелчок).
Посмотрим, как это делается.
Базовый плагин jQuery
Плагины jQuery имеют следующую структуру.
По сути, вы создаете функцию, запускающую ее и передающую эту функцию объекту jQuery.
Вам нужно использовать это определение, чтобы убедиться, что функция $ — это jQuery.
Передавая jQuery функции, которая определяет параметр как $, $ гарантированно ссылается на jQuery в теле функции.
Позвольте пользователю переопределить значения по умолчанию с $ .extend
Теперь я собираюсь использовать служебную функцию $ .extend () для объединения пользовательских параметров с параметрами по умолчанию.
Также мы защищаем от объекта опций, который является нулевым или неопределенным, с помощью || {}, который предоставляет пустой объект, если для опций значение равно false (нулевое и неопределенное значение).
var settings = $.extend({ image: imagesPath + "/info_icon.png", activation: "hover" },options||{});
Теперь работаем над подобранными узлами
Поскольку мы создаем плагин jQuery, вы будете использовать стандартные селекторы jQuery для определения узлов, с которыми вы хотите работать. Таким образом, мы будем называть этот плагин
Этот код будет применять наш значок ко всем элементам, которые имеют .myCssClass.
Чтобы сделать это в плагине, вам придется зацикливаться на этих элементах с помощью каждой функции.
Полный код плагина будет выглядеть так
Я добавил несколько служебных функций, чтобы скопировать стиль из соответствующего элемента в div-оболочку. Остальное — просто добавить иконку и привязать событие.
Спасибо за чтение!
От http://www.devinprogress.info/2011/05/how-to-create-simple-jquery-plugin.html