Удалить расширенную функцию - PullRequest
0 голосов
/ 28 марта 2012

Как избавиться от расширенной функции $.extend() от определенного целевого объекта .Пример: перезагружая части DOM с XHR, я могу обнаружить появление объекта следующим образом:

// Initliaize:
$('#sausage').catsup();
    ...
// Inside fn.catsup():
if($('body').find($(this)).size() == 0) // object has gone

Но как я могу убить fn.catsup()?Кажется, это не работает:

$(this).clearQueue();
$(this).stop();
$(this).unbind();
delete $(this);

Ответы [ 2 ]

7 голосов
/ 28 марта 2012

Если я понял вопрос, вы хотите удалить свою функцию из jQuery.

используйте это:

$.fn.catsup = null;

Или как предложено @ Matt :

delete $.fn.catsup
0 голосов
/ 28 марта 2012

Если я не понял это неправильно, вы просто хотите, чтобы catsup больше не был частью функций расширения jQuery:

delete $.fn.catsup;

Обратите внимание, что это не повлияет на все объекты JQuery DOM, т.е. как на существующие, так и на созданные впоследствии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...