2009-10-02 6 views
2

Я переношу свой js lib из прототипа в jquery. Тем не менее, я не знаю, как заменить следующий код:Миграция из прототипа в jquery

var utilityMethods = {  
     autoHide : function(element) { 
       //... 
} 

Element.addMethods('SPAN', utilityMethods); 

Есть ли эквивалент JQuery для расширения DOM?

Благодаря

ответ

3

Вы расширяете объекты JQuery так:

var utilityMethods = {  
    autoHide : function(element) { 
      //... 
    } 
}; 

jQuery.fn.extend(utilityMethods); 

Подробнее: http://docs.jquery.com/Core/jQuery.extend

+0

Незначительная коррекция: jQuery.fn.extend (utilityMethods); –

1

На самом деле, JQuery специально избегает расширения DOM. Недавно завершив переход с Prototype на jQuery, это было одним из пунктов продажи для меня. Вместо этого вы extend jQuery itself. Выбор объекта DOM с помощью jQuery предоставляет объект jQuery, содержащий ссылку на один или несколько объектов DOM. Любые вызовы метода для объекта jQuery (включая ваши собственные методы утилиты) работают с элементами DOM, на которые ссылается этот объект jQuery.

Смежные вопросы