2014-11-04 4 views
0

Почему этот код не работает в Firefox? Я хочу сделать снимки переключателя в галерее на событии keyup. Я читал подобные проблемы и ответы, но никто мне не помог. JQuery 1.4.4 Мой код:ReferenceError: событие не определено в событии keyup в firefox

$('body').live('keyup',function(e){ 

    if(e.keyCode == 37) { 
     $('.daPrev').click() 
    } 

    else if(e.keyCode == 39) { 
     $('.daNext').click() 
    } 

    }) 

Когда я нажимаю в консоли:

ReferenceError: event is not defined 
+0

Я не знаю, в какой версии 'live' удален ... но попробуйте' on' – Mephiztopheles

+0

Dunno. Ваш код (при замене 'on', который является новым' live' в более поздних версиях jQuery) отлично работает -> http://jsfiddle.net/c7q2c0oL/ – Andy

+0

@Mephiztopheles, OP находится на 1.4.4. – Andy

ответ

1

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

  • Использование .delegate
  • Попробуйте новую версию JQuery и переключиться на .on

.delegate:

$.delegate(selector, eventType, handler); 

Т.е.

$.delegate("div", "keyup", function(e) {...}); 
+0

В консоли: $ .delegate не является функцией. На какой версии я могу пойти, что бы не сломалось? Поскольку я не занимаюсь этим сайтом и не знаю, какие сценарии и методы он использует –

0

ваш код, кажется, не CAUS ссылочной ошибки. проверьте другие функции, вызванные при нажатии.

я сделал скрипку, попробовал в FF и консоль будет регистрировать "37"

fiddle

$('body').live('keyup',function(e){ 

    console.log('37') 
    if(e.keyCode == 37) { 
     $('.daPrev').click() 
    } 

    else if(e.keyCode == 39) { 
     $('.daNext').click() 
    } 

}) 
+0

Спасибо, это потому, что вы используете новейшую библиотеку jQuery. У меня 1.4.4. Я не могу переключить его, потому что я не занимался сайтом и не знаю, какие функции и методы он использует. –

+0

№. im не :) пожалуйста, проверьте «Внешние ресурсы»;) jQuery-1.4.4.min.js – Mephiztopheles

+0

Проблема решена с помощью jQuery migrate :) –

0

Проблема была решена с помощью JQuery мигрировать. Спасибо вам всем

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