Подвисает скрипт при выполнее на iPhone
Здравствуйте, недавно столкнулся с небольшой проблемой: есть код
который делает поиск города в списке по введенному названию "var field = $('.my-select-options').find('.my-select-option'); $('#my_select_search_field').on('keyup', function() { var q = new RegExp($(this).val(), 'ig'); for (var i = 0, l = field.length; i < l; i += 1) { if ($(field[i]).text().match(q)) { $(field[i]).show(); } else { $(field[i]).hide(); } } });" Он работает, но если зайти на страницу с iPhone и попробовать ввести значения в строку поиска, то браузер подвисает примерно на 20 секунд. Что примечательно, этот же код я использовал на другом сайте, и там все работает корректно(Версия jQuery на сайтах одинаковая) P.S. Пробовал заменить поиск на после нажатия на кнопку, а не после каждого символа, но ничего не поменялось. Единственное что заметил это то что подвисание происходит только при первом пробеге по списку. Подскажите в чем может заключаться причина данной неполадки? |
var field = $('.my-select-option'); $('#my_select_search_field').on('keyup', function() { var q = new RegExp($(this).val(), 'i'); field.each(function(){ if(q.test($(this).text())) $(this).show(); else $(this).hide(); }); }); попробуйте так, если лучше станет отпишитесь |
Часовой пояс GMT +3, время: 08:17. |