Как отменить привязку готовых событий>= jQuery 3.0

Начиная с jQuery v3.0, рекомендуемый способ связывания DOM-ready-методов: $( myReadyFunction ) без какого-либо селектора или делегирования. Особенно $(document).on('ready', myReadyFunction ) удаляется в jQuery v3.

Теперь мне нужно изменить / переопределить определенный, уже существующий готовый метод, прежде чем он будет выполнен. Я знаю, что могу отложить выполнение готового события, вызвав $.holdReady( true )... но как я могу удалить / переопределить мой старый myReadyFunction?


Существующий код, который не должен быть изменен:

myReadyFunction = function() { console.info('old'); } $( myReadyFunction );

Я могу добавить код до или после этой части, вот некоторые вещи, которые я пробовал и не работал:


добавление после

$.off( 'myReadyFunction' );

=> $.off не является функцией


добавление после

$(document).off( 'myReadyFunction' ); $(document).off( 'ready', 'myReadyFunction' );

=> нет сообщений об ошибках, но оба варианта не работают


myReadyFunction = function() { console.info('new'); } $( myReadyFunction );

=> добавляет новую переопределенную функцию, но не удаляет старую

0 ответов

Другие вопросы по тегам