jquery a href click

Я пытаюсь вызвать событие нажатия на гиперссылку с помощью jQuery, как показано ниже. У гиперссылки нет идентификатора, но есть класс CSS

Функция выше не работает. Это гиперссылка

У меня нет фактических доказательств, подтверждающих это, но я уже столкнулся с этой проблемой. Похоже, что запуск события click() в теге , похоже, не ведет себя так же, как вы ожидали бы с помощью кнопки ввода.

Обходной путь, который я использовал, — установить свойство location.href в окне, которое заставляет браузер загружать ресурс запроса следующим образом:

Я бы сделал js скрипку, но характер вопроса, смешанный с тем, как jsfiddle использует iframe для рендеринга кода, делает это нехорошим.

Собственный метод DOM делает правильную вещь:

Это работает независимо от того, является ли href URL, фрагмент (например, #blah ) или даже javascript: .

Обратите внимание, что это вызывает метод DOM click вместо метода jQuery click (который является очень неполным и полностью игнорирует href ).

В дополнение к romkyns отличный ответ.. вот некоторые соответствующие документы/примеры.

Метод HTMLElement.click() имитирует щелчок мышью по элементу.

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

Вы можете получить доступ к определенному элементу DOM из объекта jQuery: (пример)

Вы можете использовать метод .get() для извлечения элемента DOM из объекта jQuery: (пример)

Как и ожидалось, вы можете выбрать элемент DOM и вызвать метод .click() . (пример)

Стоит отметить, что jQuery не требуется для запуска встроенного события .click() .

I have this anchor and on click I would like to popup something. This href is within a page that has other hrefs.

The above code does not fire up.

4 Answers 4

It doesn’t because the href value is not sign_up .It is #sign_up . Try like below, You need to add «#» to indicate the id of the href value.

If you own the HTML code then it might be wise to assign an id to this href. Then your code would look like this:

If you do not own the HTML then you’d need to change $(‘#sign_up’) to $(‘a.sign_new’). You might also fire event.stopPropagation() if you have a href in anchor and do not want it handled (AFAIR return false might work as well).

You’ve mixed up the class and href names / selector type.

You are binding the click event to anchors with an href attribute with value sign_new .

Either bind anchors with class sign_new or bind anchors with href value #sign_up . I would prefer the former.

Not the answer you’re looking for? Browse other questions tagged javascript jquery html or ask your own question.

Hot Network Questions

To subscribe to this RSS feed, copy and paste this URL into your RSS reader.

site design / logo © 2019 Stack Exchange Inc; user contributions licensed under cc by-sa 4.0 with attribution required. rev 2019.11.15.35459

Определение и применение

jQuery метод .click() привязывает JavaScript обработчик событий «click» (клик левой кнопкой мыши), или запускает это событие на выбранный элемент.

Обращаю Ваше внимание на то, что следующие условия обязательно должны быть выполнены, чтобы событие «click» сработало:

  • Левая кнопка мыши нажата, когда курсор находился внутри элемента.
  • Левая кнопка мыши отпущена пока курсор находится внутри элемента.

jQuery синтаксис:

Обращаю Ваше внимание, что метод .click(), используемый вместе с функцией, переданной в качестве параметра (handler) является, короткой записью метода .on(), а без параметра является короткой записью метода .trigger():

Добавлен в версии jQuery

Значения параметров

Параметр Описание
eventData Объект, содержащий данные, которые будут переданы в обработчик событий.
handler Функция, которая будет выполнена каждый раз, когда событие срабатывает. Функция в качестве параметра может принимать объект Event .

Пример использования

В этом примере с использованием jQuery метода .click() мы при нажатии на элемент (кнопка) вызываем событие «click» на элементе

Обратите внимание, что если мы вызываем напрямую событие «click» на элемент

Результат нашего примера:

Пример использования jQuery метода .click() (без параметров и с функцией) jQuery события

Оцените статью