JQuery писать ненавязчивый JavaScript помощи - PullRequest
3 голосов
/ 04 июня 2011

У меня есть следующий код в jquery.

$(function() {
  $('.test').click(function() {
    alert('this is a test');
  });
});

Я понимаю, что это ненавязчиво, но я хотел бы попытаться сделать его еще более ненавязчивым, сделав что-то подобное.

$(function() {
  $('.test').submitAlert();

 *and place the alert message right here.
});

Тогда я смогу вызывать предупреждающее сообщение для разных классов без необходимости повторного ввода кода. Может кто-нибудь, пожалуйста, покажите, как сделать это для меня с JQuery, пожалуйста?

1 Ответ

8 голосов
/ 04 июня 2011

Вы можете заключить код в плагин:

(function($) {
    $.fn.submitAlert = function(text) {
        this.bind("click", function() {
            alert(text);
        });
    }
})(jQuery);

Использование:

$(".test").submitAlert("hello world");

Вот рабочий пример: http://jsfiddle.net/andrewwhitaker/UGsHR/1/

...