2010-02-12 3 views
2

У меня есть специальный обработчик событий, или я полагаю, некоторые называют его пользовательской функцией jquery.jQuery live() метод для пользовательских функций

Моя проблема заключается в том, что я пытаюсь применить к нему метод live(). Но я не слишком успешна.

Вот простая функция пользовательских JQuery:

$.fn.myFunction = function() { 
    return $(this).addClass('changed'); 
} 

И здесь я использую его:

$('.changePlease').myFunction(); 

Хорошо, достаточно просто. Но как мне применить метод live()?

На самом деле я понятия не имею, возможно ли это. Но я использовать живой() для других вещей, как:

$(".changePlease").live("click",function(){ alert("hello"); }); 

мысли по этому поводу?

ответ

2

jquery.live работает только для встроенных событий, и пока не был адаптирован для пользовательских событий. Возможно, вам придется найти обходной путь.

0

Это работает?

$.fn.myFunction = function() { 
    return $(this).live('click', function(){ 
    $(this).addClass('changed'); 
    }); 
}; 

Не уверен, что такое прецедент здесь. Похоже, что вы хотите загружать новые элементы (через ajax или, может быть, создавая их с другим событием?), И как только они получат click событий, чтобы добавить к ним класс 'changed'.