.off()
должен использоваться с тем же селектором и событием, которое использовалось с .on()
. Таким образом, чтобы отцепить это:
$(document).on("keydown", updated_textarea_var, function (e) {
вы бы использовать это:
$(document).off("keydown", updated_textarea_var);
Вы должны быть направлены на один и тот же объект (тот, первоначальное событие, прикрепленную к), и вы должны быть направлены на соответствующее событие так JQuery знает, какие обработчики событий удалить. Вы можете дополнительно настроить целевой вторичный селектор и/или фактическую функцию обратного вызова, если хотите получить более мелкое зернистое соответствие для удаления.
Однако, поскольку вы используете делегированное управление событиями, вам может не потребоваться отключить обработку событий. Если мы больше понимаем, что вы на самом деле пытаетесь сделать, может быть более чистый вариант.
Например, если вы просто пытаетесь изменить который текстовое поле является мишенью обработчиком события, то вы можете использовать имя класса в обработчик событий (скажем, есть имя класса называется «мишенью»), как это:
$(document).on("keydown", ".target", function (e) {
и затем изменить который текстовое поле обработчик событий в действии, вам как раз удалить имя класса из одного текстового поля и добавить его к другому. Это ключевая функция делегированной обработки событий.
Что такое 'селектор'? – Ryan
@minitech селектор - это предыдущая обновленная_текстарея_var. – Mathew
необходимо указать код, который вы используете для 'disable'. Несколько фрагментов ничего не говорят никому – charlietfl