в чем разница между этими двумя функциями jQuery?

#jquery #function #click #bind

#jquery #функция #нажмите #привязать

Вопрос:

в чем разница между этими двумя функциями jQuery?
.bind(‘click‘, … и .click( …

 1. $("#div").bind('click', function(event) { });

2. $("#div").click(function() { });
  

Комментарии:

1. Взгляните на документацию : этот метод является сокращением для .bind('click', handler) в первых двух вариантах и .trigger('click') в третьем.

Ответ №1:

Ничего. Вторая — это просто ярлык. bind используется, когда вы пытаетесь прослушать менее распространенное событие, у которого нет собственного ярлыка.

Ответ №2:

технически bind это быстрее, поскольку на один вызов функции меньше, но функционально они идентичны. Кроме того, .click() может использоваться как сопоставление с .trigger() , если вы не передаете функцию:

 $('#div').click(); === $('#div').trigger('click');
  

Ответ №3:

Между этими двумя нет никакой разницы. Однако, если бы вы использовали

 $('#div').live('click', function(ev) { });
  

это привязало бы событие к любому объекту DOM, соответствующему селектору сейчас или в будущем. Это означает, что если вы загружаете div с идентификатором «div» с помощью AJAX, обработчик кликов будет автоматически подключен к вашему новому div.

Ответ №4:

Разницы нет. click это просто удобная функция, которая вызывает bind('click', ...) .