2012-06-18 3 views
0

На клавиатуре мой скрипт что-то делает, мне было интересно, могу ли я отключить его, как в, я только хочу, чтобы он проверял один ключ.О событиях? Выключи?

ckEditorNewsArticle.document.on("keyup", function(){ 

Edit:

ckEditorNewsArticle.document.on('keyup', function(){ 
         alert('key up'); 
       }); 

Это работает. Но я не могу заставить его стрелять только один раз, используя его.

ckEditorNewsArticle.document.one('keyup', function(){ 
         alert('one'); 
       }); 

ответ

3

использование .one():

Присоединить обработчик события для элементов. Обработчик выполняется не более одного раза за элемент.

Документация: http://api.jquery.com/one/

Рабочий пример: http://jsfiddle.net/54ymc/

+0

Не работает с CKEditor – panthro

+0

Я не знаком с CKEditor, но вы убедитесь, что ваш 'ckEditorNewsArticle.document' элемент является JQuery элемент? возможно, вы должны попробовать '$ (ckEditorNewsArticle.document)'. –

4

Вы можете отключить события с помощью (сюрприз, сюрприз), .off().

ckEditorNewsArticle.document.off('keyup'); 

Если вы хотите, чтобы обработчик выполняется только один раз, хотя, возможно, я предлагаю использовать .one()?

ckEditorNewsArticle.document.one('keyup', function() { 
    // do something 
}); 
+0

.one, похоже, не работает – panthro

+0

Возможно, это не так, но должно. Можете ли вы обновить свой вопрос с помощью кода, использующего '.one()', который не работает? –

+0

Добавлено в код .. – panthro

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