2012-05-06 2 views
1

Я использовал для отправки ключевого события в FireFox 10 и 11. Недавно я обновляю свой браузер до FireFox 12 и диспетчерская остановка работает.Отправка ключевого события в Firefox 12

Here is a sample code от того, что я был сделан.

Когда вы запускаете его в Firefox 11 или меньше, вы можете найти символ, напечатанный в текстовом поле.

Почему это не работает в FF12, и как я могу его исправить? Любое альтернативное решение также присваивается.

+0

Что случилось? Событие * * уволен: http://jsfiddle.net/EshwS/5/ –

+0

он не работает в FF 12. Здесь есть несколько машин, я проверяю их на всех из них. Он работает над FF 11, 10, 9, ... –

+0

Определить «Не работает». В моей демонстрации в FF 12.0 появляется предупреждение: http://i.stack.imgur.com/rxxwd.png –

ответ

1

Это их ответ на BugZilla. Диспетчерское ключевое событие, похоже, уже отклонено из соображений безопасности:

Обратите внимание: initKeyEvent() все еще работает. Редакторы просто отказываются от ключевых событий для безопасности и неясны в текущей спецификации.

Но я до сих пор не понимаю, почему мое отправленное событие не доверено.

1

Почему вы не просто назначаете значение (символ # 1740) в поле ввода при загрузке страницы? Как:

$('#name').val(String.fromCharCode(1740))​; 

См this jsfiddle

1

проверить мою скрипку с пустым входом наблюдения события нажатия клавиши, а затем заменить вход при входе в «А» ... попробовать его

EDIT: это может работать по-другому в других браузерах, но работает для меня в современных браузерах, таких как Firefox и Chrome/Chromium ... держатели IE могут вести себя по-разному при наблюдении за событием

EDIT 2: обновлено fiddle rev 1, чтобы также иметь глобальную память pping, как вы предположили ... небольшое побочное устройство: некоторые браузеры, возможно, не поддерживают извлечение введенного кода ключа от event.keyCode, так что также проверьте event.which (jQuery объединит их в event.which, а также позволит вам легко наблюдать за кросс-браузером нажатия клавиш) ,

fiddle

+0

Korgh: Вот ваша ошибка: 1. Нажмите «A» 2. Выберите текст ввода 3. Нажмите «A» еще раз Текст ввода должен быть заменен на вновь нажатый ключевой символ (1740), однако вы увидите два 1740 символов на входе. –

+0

прежде всего это Крог не Корг ... секунда: ошибка? это не похоже на то, что вы попросили прямо для него или дали образец кода, который сделал то, что вы хотели ... Я только хотел помочь вам и дать вам представление о том, как вы могли бы начать ... глядя на мое описание кода моей скрипки абсолютно правильно ... Я никогда не говорил о том, чтобы построить для вас полностью рабочее решение, не так ли? (отрицательный голос означает, что это неправильный/плохой ответ, но это не так) –

+0

Я даже голосовал за ваш вопрос, поэтому он получает 0, а не -1, чтобы привлечь к себе больше внимания, чтобы мы получили хороший ответ ... но обвинять меня в «ошибках» (которые вообще не относятся к скрипке) означает –

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