Я работаю над проблемой здесь, которая встречается только в IE8/9
У нас есть 2 окна поиска. Один в заголовке, который использует автозаполнение jQuery, а другой - специально для функции архивирования, которую мы имеем на определенных страницах. Что должно произойти, если поисковый ящик Autocomplete находится в фокусе, и мы нажимаем Enter после ввода чего-либо, он ищет с этим значением. Достаточно легко.
Однако в IE8/9, независимо от того, в каком текстовом поле имеется фокус, клавиша Enter вызывает это событие.
Вот что у нас получилось:
jQuery(".autocomplete").keydown(function(event) {
if (jQuery(".autocomplete").is(":focus")){
var query;
if (event.which === 13) {
event.preventDefault();
query = this.value;
return window.location.href = "/search?q=" + query;
}
}
});
Я также попробовал.keypress(), и он дает тот же результат. Мы используем jQuery 2.0.0
Наша команда относительно новичок в jQuery, поэтому мы, вероятно, просто делаем это неправильно.
Он должен запускать только поисковые ящики с классом.autocomplete, и только если этот конкретный блок имеет фокус.
Благодарю!
Я прошу прощения, очевидно, что другая команда добавила файл.js, который мешал работе этого сценария jquery в нашем файле.