1. Вы в команде что-нибудь когда-нибудь разрабатывали? Уточню — вам хоть раз приходилось разбираться в коде, который писало более 10 разработчиков? Еще раз повторюсь — помимо создания приложений есть еще понятие «поддержка» кода.
Как в таком коде разбираться?
elem.on(keydown, function(e){
switch (e.keyCode) {
case 53:
apple();
break;
case 66:
deleteComment();
break;
case 22:
banUser();
break;
}
})
2.
> В IDE делаю поиск по слову .onkey, и ищу код 9.
и вы начинаете судорожно щелкать по всем клавишам пока не увидите в консоли нужное число? По-моему это пустая (а главное — не нужная) трата времени.
и как вы будете искать например что же за клавиша с кодом 103, например на MacBook air? (подсказка — это numpad 7)
Представьте что вы пришли на новое место работы и перед вами задача — нужно чтобы при нажатии на клавишу TAB происходило такое же действие как и при нажатии BACKSPACE. у вас 1000 js файлов. и в каком то из них есть обработчик нужный. как вы будете искать его? Введете в поиск число 8?
и? я лишь акцентировал внимание на то, что namespaced events давно существуют в jquery.
и привел пример их использования, а поскольку сейчас актуальная версия 1.7.2, то использован был рекомендуемый метод on (вместо bind).
Что и требовалось доказать. tab и backspace перепутали (tab — 9, backspace — 8). Поэтому и говорю что нужно использовать константы, сравните и скажите что читабельнее:
1. Да ну? ну назовите мне сходу коды tab, space, shift, backspace, тильды
2. я не говорю про искать по [data-id=...]. Я говорю про извлечение идентификатора
Namespaced events также дают возможность делать trigger определенных событий $(elem).trigger('click.namespace1') позволит вызвать только обработчики из namespace1. В случае плагинов это весьма полезно
Опровержение чего? опровержение чьего-то мнения? Если я впервые узнал что такое «html» от учителя информатики, то это вовсе не значит что учитель информатики придумал это слово.
Я думаю не стоит обсуждать русский язык в комментариях, для этого можно использовать личные сообщения.
Как в таком коде разбираться?
2.
> В IDE делаю поиск по слову .onkey, и ищу код 9.
Боюсь вы не найдете…
и как вы будете искать например что же за клавиша с кодом 103, например на MacBook air? (подсказка — это numpad 7)
Представьте что вы пришли на новое место работы и перед вами задача — нужно чтобы при нажатии на клавишу TAB происходило такое же действие как и при нажатии BACKSPACE. у вас 1000 js файлов. и в каком то из них есть обработчик нужный. как вы будете искать его? Введете в поиск число 8?
и привел пример их использования, а поскольку сейчас актуальная версия 1.7.2, то использован был рекомендуемый метод on (вместо bind).
или
2. я не говорю про искать по [data-id=...]. Я говорю про извлечение идентификатора
Проверить можно так:
Теперь если сначала по каждой ссылке будет выводиться свой счетчик
то обработчик будет в памяти лишь в одном экземпляре.
а если написать вот так
то тогда будет N обработчиков в памяти.
К сожалению второй вариант тоже попадался мне на глаза на практике.
Ваш вариант безусловно решает эту проблему. Поправлю статью с этими примерами и добавлю вариант решения с вынесением обработчика
изменить метод с GET на POST?
Я думаю не стоит обсуждать русский язык в комментариях, для этого можно использовать личные сообщения.
Словари яндекса: Читабельность
Вики: Удобочитаемость (читабельность)
gramota.ru Читабельность
dict.rambler.ru Читабельность