проблема с ключом вкладки javascript? в текстовом поле

#javascript #jquery

#javascript #jquery

Вопрос:

Почему этот код не работает в safari, Chrome и Internet Explorer.. Работает только с Opera и Firefox…

   $("#txtAd").keypress(function (e) {


    var code = e.keyCode || e.which;
    if (code == 9) {

        $("#txtSoyad").val('');

    };

});
  

Ответ №1:

jQuery абстрагирует это, поэтому вам не нужно 🙂

Чтобы определить, какой символ был введен, изучите объект события, который передается функции-обработчику. Хотя браузеры используют разные свойства для хранения этой информации, jQuery нормализует .which свойство, чтобы вы могли надежно использовать его для извлечения символьного кода.

Источник.

Используйте e.which , нет необходимости использовать || трюк с вычислением короткого замыкания.

Хотя, говоря это, ваш код действительно работал у меня в Chrome 10.

Вы уверены, что $("#txtSoyad") является допустимым селектором и выбрал то, что вы хотите? Выведите length свойство, если вы не видите 1 , оно выбрано неправильно.

Комментарии:

1. @psygnosis Да. Это работает в скрипке . Если вы можете создать скрипт, при котором он не работает, я могу посмотреть на ваш код и сказать вам, что не так.

2. все в порядке.. Я могу сделать с событием focus.. Браузеры уже добавили вкладки :):) $ («#txtSoyAd»).focus(функция(){ очистить значение val(); });