|
04.07.2012, 14:08
|
Интересующийся
|
|
Регистрация: 13.03.2011
Сообщений: 11
|
|
jQuery bind/on click или JavaScript onClick - что и в каких случаях лучше юзать
Добрый день всем!
Интересуют мнения по такому интересному вопросу:
Что же лучше/производительнее/удобнее и в каких ситуациях -
метод jQuery .on('click'...) или событие тега onClick="..."
|
|
04.07.2012, 14:11
|
|
CacheVar
|
|
Регистрация: 19.08.2010
Сообщений: 14,205
|
|
Сообщение от IVAN86
|
Что же лучше/производительнее/удобнее
|
В конечном счете все это одно и то же...
|
|
04.07.2012, 14:43
|
без статуса
|
|
Регистрация: 25.05.2012
Сообщений: 8,219
|
|
IVAN86,
По скорости лучше onclick="Func()" прямо в теге
Но ежели скрипт пользовательский(от клиента) то в тег уже onclick="Func();" вряд ли установишь и так же проблемы при их оч большом кол-ве - разрастаецо объем передаваемой страницы. тады вышеуказанное ksa
|
|
04.07.2012, 16:19
|
Интересующийся
|
|
Регистрация: 13.03.2011
Сообщений: 11
|
|
На самом деле далеко не одно и то же.
Если решать задачу "кликабельной таблицы" (~300 строк),
где при клике по строчке должна срабатывать функция,
то будет большая разница.
В одном случае много кода, в другом много событий за которыми следит метод .on
Кроме того, если таблица подгружается динамически.... тут начинается самое интересное...
|
|
04.07.2012, 16:43
|
без статуса
|
|
Регистрация: 25.05.2012
Сообщений: 8,219
|
|
Сообщение от IVAN86
|
Кроме того, если таблица подгружается динамически.... тут начинается самое интересное...
|
Если таблица подгружается динамически, то либо live, либо on
|
|
04.07.2012, 18:59
|
|
Профессор
|
|
Регистрация: 22.03.2012
Сообщений: 3,744
|
|
Сообщение от IVAN86
|
Если решать задачу "кликабельной таблицы" (~300 строк),
где при клике по строчке должна срабатывать функция,
то будет большая разница.
|
Такие задачи решаются установкой одного обработчика на родительский контейнер (в данном случае таблицу), цель (target || srcElement) определяется при наступлении события (одного onclick достаточно).
Я думаю, принцип такой - где можно обойтись без jq, нужно обойтись без jq.
|
|
04.07.2012, 19:18
|
|
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
самый лучший вариант добавление обработчика это
addEventListener
|
|
04.07.2012, 19:46
|
|
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
кстати проводил свое исследование по этой теме , какой самый быстрый способ добавить обработчик (может для профи примитивно , для новичков пойдет)
http://www.html.by/threads/25995-ben...mentam-v-cikle
|
|
05.07.2012, 08:40
|
|
CacheVar
|
|
Регистрация: 19.08.2010
Сообщений: 14,205
|
|
Сообщение от IVAN86
|
тут начинается самое интересное...
|
Что именно?
Один вариант клика сработает мгновенно, а другой будет срабатывать через полчаса?
|
|
05.07.2012, 09:49
|
Интересующийся
|
|
Регистрация: 13.03.2011
Сообщений: 11
|
|
Сообщение от Deff
|
Если таблица подгружается динамически, то либо live, либо on
|
К слову, live - давно устаревший метод, его замена on.
|
|
|
|