- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как удалить плохие SEO-ссылки и очистить ссылочную массу сайта
Применяем отклонение ссылок
Сервис Rookee
В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
День добрый. Есть функция, вызывающая поисковые подсказки по мере ввода в поисковую строку
Каким образом вызывать её не при событии keyup, а при вводе с цифровой клавиатуры?
Сама клавиатура работает примерно по такому принципу (тут привожу сильно упрощенный вариант)
Плохое это занятие - эмуляция нажатия клавиатуры.
Торикстартеру - вынесите функцию чтения/записи записи наружу и вызывайте ее напрямую.
И чем это плохо?
Если в функции произошла ошибка будет сложнее определить откуда ее вызвали. У вас вызов замаскирован какими-то прослойками jquery и DOM
Лучше к такой практике не привыкать.
Если в функции произошла ошибка будет сложнее определить откуда ее вызвали. У вас вызов замаскирован какими-то прослойками jquery и DOM
Лучше к такой практике не привыкать.
Честно говоря, туманно и неубедительно. Ладно, пусть ТС делает как ему лучше.
1. Туманно ровно до тех пор пока не придется столкнуться с чужим кодом на несколько тысяч строк, в котором программа сама собой жамкает по кнопкам. Причем делает это неправильно, в самый неподходящий момент, да еще и отложено по таймеру. Такой код я как раз унаследовал от предыдущего верстальщика.
2. Все что используется повторно, лучше оформлять в виде отдельных функций, переменных, объектов.
Например в тексте и вас и у топикстартера дважды используется $('#ajaxSearchString')
В принципе ничего страшного. Но отсутствие привычки такой подход рано или поздно приведет к тормозам.
1. Туманно ровно до тех пор пока не придется столкнуться с чужим кодом на несколько тысяч строк, в котором программа сама собой жамкает по кнопкам. Причем делает это неправильно, в самый неподходящий момент, да еще и отложено по таймеру. Такой код я как раз унаследовал от предыдущего верстальщика.
2. Все что используется повторно, лучше оформлять в виде отдельных функций, переменных, объектов.
Например в тексте и вас и у топикстартера дважды используется $('#ajaxSearchString')
В принципе ничего страшного. Но отсутствие привычки такой подход рано или поздно приведет к тормозам.
Я привел простое решение для ТС и ничего там плохого нет, не надо вводить в заблуждение. Я что написал ему тысячу строк кода?
Если в функции произошла ошибка будет сложнее определить откуда ее вызвали. У вас вызов замаскирован какими-то прослойками jquery и DOM
Лучше к такой практике не привыкать.
Что может быть непонятного в использовании функции "trigger", например для вас? Чем это замаскировано? Естественно, если бы с нуля это все писалось - можно было и по другому сделать, это любому понятно.
Я что написал ему тысячу строк кода?
всего одну - описание обработчика:
var f = ...
Что может быть непонятного в использовании функции "trigger", например для вас? Чем это замаскировано? .
Тем что функция вызывается через длинную-длинную цепочку обработчиков jquery. Если не верите - посмотрите fireBug. У меня получилось 7 вызовов левых jquery-процедур от триггера до вызова того что нужно было вызвать. Во-первых это неоправданная трата ресурсов, во вторых осложняет локализацию источника вызова. А в третьих - зачем вот так через одно место????
jquery - замечательная библиотека, но иногда прививает какие-то странные шаблоны.
всего одну - описание обработчика:
var f = ...
Тем что функция вызывается через длинную-длинную цепочку обработчиков jquery. Если не верите - посмотрите fireBug. У меня получилось 7 вызовов левых jquery-процедур от триггера до вызова того что нужно было вызвать. Во-первых это неоправданная трата ресурсов, во вторых осложняет локализацию источника вызова. А в третьих - зачем вот так через одно место????
jquery - замечательная библиотека, но иногда прививает какие-то странные шаблоны.
Даже если человек вводит со скоростью от 1 символ/полсекунды, то выигрыш в микросекунду тут ничего не даст. Получается, кроме этого сомнительного недостатка - мое решение ничем не грозит ТС. Критиковать попусту любой может, если так хотите помочь ему - приведите конкретное решение, а не общие советы и лекции по оптимизации JS и пусть он выберет, то что ему удобнее.
Даже если человек вводит со скоростью от 1 символ/полсекунды, то выигрыш в микросекунду тут ничего не даст.
Зависит от сложности задачи. Иногда отказ от лишнего обращения к DOM дает резкий прирост скорости. К тому же речь идет не только о скорости но и об удобстве отладки. - стек вызова не замусоривается ничем лишним.
приведите конкретное решение
Я уже приаел конкретное решение - вынести функцию обработчик и обращаться к нему напрямую
var someclick = function(){...}
$('body').on('keyup', '#ajaxSearchString', someclick);
$('body').on('click', '.keypad div', function() {... someclick();});