Написание своей собственной функции Jquery? - PullRequest
1 голос
/ 07 января 2012

Я хочу написать функцию, чтобы я мог выполнять команды следующим образом:

$("#Button").glow();

Что я должен переопределить, или как я должен структурировать функцию "свечение", чтобы я мог называть ее так, как я это делаю выше?

Ответы [ 6 ]

10 голосов
/ 07 января 2012

Взгляните на авторинг плагина . Прочитайте документацию. Сделай и попробуй что-нибудь. Как например:

(function($) {
    $.fn.glow = function(options) {  
        return this.each(function() {     
            // TODO: do something for each element that matched your selector
        });
    };
})(jQuery);
9 голосов
/ 07 января 2012

Вы должны объявить функцию jQuery как:

jQuery.fn.myPlugin = function() {

  // Do your awesome plugin stuff here

};

и после этого

$("#Button").myPlugin();

читать здесь http://docs.jquery.com/Plugins/Authoring

7 голосов
/ 07 января 2012
(function($) {
    $.fn.glow = function() {
       return this.each(function() { //<--optionally, parameters here
           // your logic here
           // `this` at this point refers to the DOM element
       });
    }
})(jQuery); //<-- Closure to allow using $ where $ is not jQuery any more

return в return this.each(..) включает цепочки плагинов jQuery, так что вы можете использовать:

$("selector").glow().anothermethod();
//If return was omitted, the previous line would throw an error
3 голосов
/ 07 января 2012

http://docs.jquery.com/Plugins/Authoring

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

2 голосов
/ 07 января 2012
(function( $ ){

  $.fn.glow = function() {

    //your selected element is 'this'
    this. ...//do your magic

  };
})( jQuery );

И тогда вы можете использовать его так:

$('#element').glow();

Для полной информации, проверьте это: http://docs.jquery.com/Plugins/Authoring

1 голос
/ 07 января 2012
jQuery.fn.glow = function () {
  //Do Stuff
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...