Скрипт для нажатия кнопок в браузере

Обновлено: 06.07.2024

Событие — это сигнал о том, что что-то произошло. Все узлы DOM генерируют такие сигналы (но события не ограничиваются DOM).

Вот список самых полезных событий DOM, просто взгляните на них:

События мыши:

  • щелчок — когда мышь щелкает элемент (устройства с сенсорным экраном генерируют его при касании).
  • контекстное меню — при щелчке правой кнопкой мыши по элементу.
  • mouseover/mouseout – когда курсор мыши подходит/покидает элемент.
  • mousedown/mouseup — когда кнопка мыши нажимается/отпускается над элементом.
  • mousemove — при перемещении мыши.

События клавиатуры:

  • keydown и keyup — когда клавиша нажата и отпущена.

События элемента формы:

  • отправить — когда посетитель отправляет .
  • фокус – когда посетитель фокусируется на элементе, например на .

События документа:

  • DOMContentLoaded — когда HTML загружается и обрабатывается, DOM полностью построен.

События CSS:

Есть много других событий. Подробнее о конкретных событиях мы поговорим в следующих главах.

Обработчики событий

Чтобы реагировать на события, мы можем назначить обработчик — функцию, которая запускается в случае события.

Обработчики — это способ запуска кода JavaScript в случае действий пользователя.

Существует несколько способов назначить обработчик. Давайте рассмотрим их, начиная с самого простого.

HTML-атрибут

Обработчик можно задать в HTML с помощью атрибута с именем on .

По щелчку мыши запускается код внутри onclick.

Обратите внимание, что внутри onclick мы используем одинарные кавычки, потому что сам атрибут заключен в двойные кавычки. Если мы забудем, что код находится внутри атрибута, и используем внутри двойные кавычки, например: onclick="alert("Click!")" , то это не будет работать правильно.

Атрибут HTML — неудобное место для написания большого количества кода, поэтому лучше создать функцию JavaScript и вызывать ее там.

Здесь щелчок запускает функцию countRabbits() :

Как мы знаем, имена атрибутов HTML не чувствительны к регистру, поэтому ONCLICK работает так же, как onClick и onCLICK… Но обычно атрибуты пишутся в нижнем регистре: onclick .

DOM-свойство

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

Например, elem.onclick :

Если обработчик назначается с помощью HTML-атрибута, браузер читает его, создает новую функцию из содержимого атрибута и записывает ее в свойство DOM.

Таким образом, этот способ фактически такой же, как и предыдущий.

Эти две части кода работают одинаково:

В первом примере атрибут HTML используется для инициализации кнопки.onclick , а во втором — скрипт, вот и вся разница.

Поскольку существует только одно свойство onclick, мы не можем назначить более одного обработчика событий.

В приведенном ниже примере добавление обработчика с помощью JavaScript перезаписывает существующий обработчик:

Чтобы удалить обработчик, присвойте elem.onclick = null .

Доступ к элементу: this

Значением this внутри обработчика является элемент. Тот, на котором есть обработчик.

В приведенном ниже коде кнопка показывает свое содержимое, используя this.innerHTML:

Возможные ошибки

Если вы начинаете работать с событиями — обратите внимание на некоторые тонкости.

Мы можем установить существующую функцию в качестве обработчика:

Но будьте осторожны: функция должна быть назначена как saythanks , а не saythanks() .

Если мы добавим круглые скобки, то saythanks() станет вызовом функции. Таким образом, последняя строка фактически берет результат выполнения функции, который не определен (поскольку функция ничего не возвращает), и присваивает его onclick . Это не работает.

…С другой стороны, в разметке скобки нужны:

Разницу легко объяснить. Когда браузер читает атрибут, он создает функцию-обработчик с телом из содержимого атрибута.

Итак, разметка создает это свойство:

Не используйте setAttribute для обработчиков.

Такой вызов не сработает:

Регистр свойств DOM имеет значение.

Назначьте обработчик elem.onclick , а не elem.ONCLICK , поскольку свойства DOM чувствительны к регистру.

добавить прослушиватель событий

Фундаментальная проблема вышеупомянутых способов назначения обработчиков заключается в том, что мы не можем назначить несколько обработчиков на одно событие.

Допустим, одна часть нашего кода хочет выделить кнопку при нажатии, а другая — показать сообщение при том же нажатии.

Мы хотели бы назначить для этого два обработчика событий. Но новое свойство DOM перезапишет существующее:

Разработчики веб-стандартов это давно поняли и предложили альтернативный способ управления обработчиками с помощью специальных методов addEventListener и removeEventListener . У них нет такой проблемы.

Синтаксис для добавления обработчика:

  • once : если true , прослушиватель автоматически удаляется после срабатывания.
  • capture : этап обработки события, который будет рассмотрен позже в главе Всплывание и захват. По историческим причинам параметры также могут принимать значения false/true , это то же самое, что и .
  • passive : если true , обработчик не будет вызывать preventDefault() , мы объясним это позже в разделе Действия браузера по умолчанию.

Чтобы удалить обработчик, используйте removeEventListener :

Чтобы удалить обработчик, мы должны передать точно такую ​​же функцию, которая была назначена.

Это не работает:

Обработчик не будет удален, потому что removeEventListener получает другую функцию — с тем же кодом, но это не имеет значения, так как это другой объект функции.

Вот правильный способ:

Обратите внимание — если мы не сохраним функцию в переменной, мы не сможем ее удалить. Невозможно «прочитать» обработчики, назначенные addEventListener .

Несколько вызовов addEventListener позволяют добавить несколько обработчиков, например:

Как видно из приведенного выше примера, мы можем установить обработчики оба с помощью DOM-свойства и addEventListener . Но обычно мы используем только один из этих способов.

Существуют события, которые нельзя назначить через свойство DOM. Только с addEventListener .

Например, событие DOMContentLoaded, которое запускается при загрузке документа и построении модели DOM.

Поэтому addEventListener более универсален. Хотя такие мероприятия скорее исключение, чем правило.

Объект события

Чтобы правильно обработать событие, нам нужно знать больше о том, что произошло. Не просто «щелчок» или «нажатие клавиши», а каковы были координаты указателя? Какая клавиша была нажата? И так далее.

Когда происходит событие, браузер создает объект события, помещает в него сведения и передает в качестве аргумента обработчику.

Вот пример получения координат указателя из объекта события:

Некоторые свойства объекта события:

event.type Тип события, здесь «щелчок». event.currentTarget Элемент, обрабатывающий событие. Это то же самое, что и this, если только обработчик не является стрелочной функцией или this не привязан к чему-то другому, тогда мы можем получить элемент из event.currentTarget. event.clientX / event.clientY Координаты курсора относительно окна для событий указателя.

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

Если мы назначим обработчик в HTML, мы также можем использовать объект события, например:

Это возможно, потому что когда браузер считывает атрибут, он создает обработчик вроде этого: function(event) < alert(event.type) >. То есть: его первый аргумент называется «событие», а тело берется из атрибута.

Обработчики объектов: handleEvent

Мы можем назначить не только функцию, но и объект в качестве обработчика событий, используя addEventListener . Когда происходит событие, вызывается его метод handleEvent.

Как мы видим, когда addEventListener получает объект в качестве обработчика, он вызывает obj.handleEvent(event) в случае события.

Для этого мы также можем использовать класс:

Здесь один и тот же объект обрабатывает оба события. Обратите внимание, что нам нужно явно настроить прослушивание событий с помощью addEventListener . Объект меню получает здесь только mousedown и mouseup, а не любые другие типы событий.

Метод handleEvent не должен выполнять всю работу сам по себе. Вместо этого он может вызывать другие методы, специфичные для события, например:

Теперь обработчики событий четко разделены, что может упростить поддержку.

Обзор

Существует 3 способа назначения обработчиков событий:

  1. HTML-атрибут: onclick=". " .
  2. Свойство DOM: elem.onclick = function .
  3. Методы: elem.addEventListener(событие, обработчик[, фаза]) для добавления, removeEventListener для удаления.

Атрибуты HTML используются экономно, потому что JavaScript в середине тега HTML выглядит немного странно и чуждо. Кроме того, там нельзя писать много кода.

Свойства DOM можно использовать, но мы не можем назначить более одного обработчика конкретного события. Во многих случаях это ограничение не актуально.

Последний способ является наиболее гибким, но и самым длинным для написания. Есть несколько событий, которые работают только с ним, например, transitionend и DOMContentLoaded (будут рассмотрены). Также addEventListener поддерживает объекты в качестве обработчиков событий. В этом случае при событии вызывается метод handleEvent.

Независимо от того, как вы назначите обработчик, он получает объект события в качестве первого аргумента. Этот объект содержит сведения о том, что произошло.

Мы узнаем больше о событиях в целом и о различных типах событий в следующих главах.

Как автоматически нажимать кнопку на веб-сайте с помощью Python?

«Нажатие веб-кнопки Python» Код ответа

Как автоматизировать Chrome без селена?

«Как управлять Chrome без Selenium Python» Code Answer’s

  1. из веб-драйвера импорта селена.
  2. из селена. вебдрайвер. хром. параметры импорта параметров.
  3. параметры = Параметры()
  4. варианты. без головы = Истина.
  5. драйвер = веб-драйвер. Chrome(CHROMEDRIVER_PATH, chrome_options=параметры)

Как вы вводите данные на веб-сайт с помощью Python?

Чтобы извлечь данные с помощью парсинга веб-страниц с помощью Python, необходимо выполнить следующие основные шаги:

  1. Найдите URL, который нужно очистить.
  2. Проверка страницы.
  3. Найдите данные, которые хотите извлечь.
  4. Напишите код.
  5. Запустите код и извлеките данные.
  6. Сохраните данные в требуемом формате.

Как вы автоматизируете веб-браузер в Python?

  1. 1.1 Привязки Selenium в Python. Привязки Selenium Python предоставляют удобный API для доступа к веб-драйверу Selenium, такому как Firefox, Chrome и т. д. Pip установите Selenium.
  2. 1.2 Веб-драйверы. Selenium требует, чтобы веб-драйвер взаимодействовал с выбранным браузером. Веб-драйверы — это пакет для взаимодействия с веб-браузером.

Как мне автоматизировать мой веб-браузер?

Автоматическое нажатие кнопки на веб-странице Одной из наиболее распространенных задач автоматизации браузера является автоматизация нажатия кнопки или ссылки на веб-странице. Нажатие кнопки используется для навигации по веб-сайту, подтверждения операций ввода данных, выбора ссылки на другую страницу или отмены навигации.

Как автоматизировать кнопку на веб-странице?

Чтобы нажать любую кнопку на странице, необходимо:

  1. Создайте объект, используя уникальный идентификатор/имя/имя класса кнопки.
  2. Затем вызовите object. click() для имитации нажатия кнопки.
  3. Если есть форма, то получите объект формы и используйте formobject. submit() для имитации публикации формы.

Как открыть браузер в Python?

В Python есть модуль под названием webbrowser, который позволяет открывать веб-браузер из скрипта Python, просто вызывая функцию open() модуля. Веб-браузер. Метод open() откроет веб-браузер по умолчанию с заданным URL-адресом.

Можно ли запустить Python в браузере?

Brython — это и компилятор Python, и интерпретатор, написанный на JavaScript. В результате вы можете компилировать и запускать код Python в браузере. В онлайн-редакторе Python работает в браузере. Нет необходимости устанавливать Python на машину и отправлять код на сервер для выполнения.

Как открыть URL-адрес браузера из скрипта Python?

Использование веб-браузера в Python Модуль веб-браузера предоставляет высокоуровневый интерфейс, позволяющий отображать веб-документы для пользователей. В большинстве случаев простой вызов функции open() из этого модуля приведет к открытию URL-адреса с использованием браузера по умолчанию. Вы должны импортировать модуль и использовать функцию open().

Я хочу нажать кнопку на веб-странице несколько раз, пока она не загрузится. затем перейдите в консоль JS в Chrome (CTRL+SHIFT+I Console) и установите таймер. подтасовываю конкуренцию, но я подозреваю, что

Модуль pyautogui имеет функции для имитации движений мыши, нажатия кнопок. Целочисленные значения координат x и y составляют первое значение функции, а положение мыши является важной частью настройки сценариев автоматизации графического интерфейса пользователя. Чтобы отправить виртуальное нажатие мыши на ваш компьютер, вызовите метод pyautogui.click().

В этой книге оцениваются нормативные и практические проблемы искусственного Томаса Вишмайера; Тимо Радемахер Искусственный интеллект и автономия: самоопределение в эпоху автоматизированных систем Фрузина Молнар-Габор Нажмите на заголовок другой категории, чтобы узнать больше и изменить наши настройки по умолчанию

Нечеткое тестирование — это эффективный метод поиска уязвимостей в системе безопасности программного обеспечения. Мы реализовали этот алгоритм в SAGE (Масштабируемый, автоматизированный управляемый контент, загруженный Дэвидом Молнаром. Мы благодарим Тома Болла, Манувира Даса и Джима за исследование области выполнения кода JavaScript с использованием символьного выполнения.

Автоматизация веб-браузера может выполнять важные, но рутинные задачи и освобождать вас. Нажатие кнопки используется для навигации по веб-сайту, подтверждения операций ввода данных. При автоматической навигации по веб-приложению выполняется задача автоматизации. в определенном месте, например,

Действия на сайте, которые можно автоматизировать. Автоматизируйте нажатие кнопки на веб-странице. Автоматизируйте вход на сайт. Автоматизируйте взаимодействие с веб-страницей. Мониторинг загрузки страниц. Автоматическое заполнение веб-форм. Открыть автоматически закрыть новую вкладку или окно браузера. Извлечение данных с веб-страницы.

Автоматический кликер – автозаполнение.Заполните поле ввода или нажмите кнопку или свяжите что-нибудь в любом месте. легко настроить в несколько шагов и работать как PRO Auto click Auto fill - это расширение Chrome, разработанное с использованием HTML, CSS, Javascript. Быстро настройте свое задание с помощью XPath и работайте как PRO.

Мне нужно отправить простую онлайн-форму в определенное время после того, как… интересно, смогу ли я заполнить форму, а затем автоматизировать нажатие кнопки отправки в указанное время. Страница автоматически прокручивается до iframe.

Полный список см. на сайте sitepoint. мероприятие. , против этого типа события. Javascript Интерфейсная технология веб-разработки Вызов нескольких объектов Сначала при нажатии кнопки мыши запускается событие onmousedown, затем NET Forums General ASP.

На экране настроек специальных возможностей перейдите в раздел Мышь и сенсорная панель. Выберите «Автоматически щелкать, когда указатель мыши останавливается», чтобы установить переключатель в положение «Вкл.». Теперь, когда вы перестанете двигать курсор, вокруг него появится кольцо.

Автоматизация браузера Vision выполняется непосредственно внутри двух основных браузеров. через веб-браузер, и даже самые сложные задачи могут быть написаны по сценарию. Команды тестирования пользовательского интерфейса без кода компьютерного зрения UI.Vision RPA позволяют вам писать автоматизированные

Нажмите кнопку, чтобы открыть файл - JavaScript - Форумы SitePoint Если у вас есть несколько внешних файлов JavaScript, добавьте их на ту же веб-страницу, чтобы увеличить. С другой стороны, этот пример загружается автоматически по мере загрузки страницы.< /p>

Закладка — это быстрая и постоянная ссылка на веб-страницу. Вы один раз нажимаете на кнопку, чтобы сказать компьютеру что-то сделать. Изображения загружаются автоматически, если вы не указали обратное, сняв флажок Автозагрузка

Поле ввода автозаполнения или кнопка автоматического нажатия или ссылка на что-либо в любом месте. Работайте как PRO Auto click Auto fill — это расширение Chrome, разработанное с использованием HTML, CSS, Javascript. никогда и никогда не будет передавать какие-либо данные через Интернет.

Link to Text Fragment — это новое расширение Chrome от Google, которое позволяет вам щелкнуть текст, на который вы хотите сослаться, правой кнопкой мыши и выбрать "Копировать ссылку на выделенный текст". Однако эти URL-адреса могут быть длинными и сложными для создания вручную, если

Шаг 1. Запустите Google Chrome. Шаг второй: Получите доступ к мейнфрейму (точнее, к консоли JS) Шаг третий: Напишите один раз. Шаг четвертый: автоматизируйте, итерируйте. Шаг пятый: празднуйте и делитесь.

Auto Click Auto Fill похож на служебное расширение, которое помогает пользователю заполнять любой веб-сайт с помощью щелчка, предоставляя немного информации о сайте и кнопке, которая его вызывает

Создать объект, используя уникальный идентификатор. Имя класса кнопки. Затем вызвать метод object.click() для имитации нажатия кнопки. Если есть форма, то получить объект

Есть ли расширение для браузера, которое будет нажимать кнопки вместо меня? Как автомат, но очень простой? Я хотел бы просто нажать кнопку записи, пройти

Вы можете настроить курсор так, чтобы он автоматически выполнял действие щелчка, когда курсор перестает двигаться. Это может быть полезно для пользователей, которые находят щелчки мышью или сенсорной панелью

Я пытаюсь написать сценарий Bash, который открывает браузер, нажимает кнопку HTML на веб-странице и закрывает браузер после получения ответа. Мне нужно, чтобы этот скрипт был

Однако просмотр переведенного текста заставляет меня задуматься, и я должен спросить; противоречит ли это условиям использования веб-сайта, который вы используете для автоматизации этой операции?

Отзывы и рейтинги Auto Clicker – автозаполнение [БЕТА]. Узнайте, что другие пользователи думают об Auto Clicker - AutoFill [BETA], и добавьте его в свой браузер Firefox.

Вы имеете в виду программный переход по ссылке? Почему вы хотите это сделать? Не проще ли вызвать обработчик onclick напрямую? — Halcyon 04 март 2016, в

Перейдите в настройки Chrome, настройки специальных возможностей, "Управление специальными возможностями" и в разделе "мышь и ввод" включите "Автоматически щелкать при наведении курсора

Вы можете настроить курсор так, чтобы он автоматически выполнял действия, когда курсор перестает двигаться в течение определенного периода времени. Эта функция может быть полезна для пользователей с двигателем

Он позволяет пользователям устанавливать скрипты, которые вносят оперативные изменения в содержимое веб-страницы до или после нажатия кнопки — JavaScript — форумы SitePoint

Я не могу заставить Opera (или Chrome) выдать мне это предупреждение. Они просто воспроизводят видео. Однако вы получите элемент по имени тега, идентификатору или чему-то еще, а затем

С его помощью вы можете выбрать элемент на странице и скорость, после чего ваш браузер щелкнет. Больше не нужно ломать кнопки мыши. :П. Надеюсь, вы найдете это как

Мой сценарий WebExecute правильно загружает первую страницу этих данных и автоматически создает набор данных Mathematica на основе данных, сгенерированных Javascript

Reddit Enhancement Suite — это неофициальное расширение браузера для Reddit, созданное сообществом. Обратите внимание, что RES специально разработан для работы со СТАРЫМ Reddit.

Основные сведения о селене см. на следующей странице: Автоматизируйте скучные вещи с помощью Python или используйте ссылку Как связать кнопку отправки с другой веб-страницей с помощью HTML?

Событие перемещается к элементам, расположенным выше в дереве документа, и также активирует их события щелчка. Томас Молнар «Как автоматизировать клики с помощью JavaScript»?

Я установил расширение для щелчка по всем флажкам, и оно работает у пользователя в нашем браузере Chrome, у нас появилась новая кнопка вкладок поиска.

Я заметил, что на понравившемся мне веб-сайте отсутствует функция, поэтому продолжаю искать ее вручную. Например, в Medium мне не нравится страница статистики, поэтому я начинаю искать

Каждый день Томас Молнар-Брок и тысячи других людей читают, пишут и делятся важными историями на Medium. Как автоматизировать клики с помощью JavaScript

Проблема: отправка заданий класса требует навигации по лабиринту Интернета. Техника автоматизации Интернета с помощью Python отлично подходит для многих задач, как для обеих

Как перенаправить на другую веб-страницу с помощью jQuery JavaScript. Для кнопки отмены нажмите кнопку "Автоматически" - JavaScript - Форумы SitePoint. Как использовать

издано Томасом Молнар-Броком. Как автоматизировать клики с помощью JavaScript Если вы похожи на меня, вы, вероятно, используете компьютер хотя бы раз в день. Возможно

Auto Clicker – автозаполнение, Пуна, Махараштра. 25 лайков. Заполните поле ввода или нажмите кнопку или свяжите что-нибудь в любом месте. легко настроить в несколько шагов и работать

Я хочу, чтобы кнопка автоматически нажималась после загрузки страницы. Как это сделать через Jquery? У меня есть пара вещей, которые я хочу сделать с помощью этой кнопки

addEventListener(щелчок, функция(e) <кнопка была нажата>);. Но это вообще не использует делегирование событий. Делегирование событий — это место, где вы привязываете

здравствуйте, я ищу программное обеспечение или расширение Google, когда на экране остается 1 секунда, он нажимает кнопку без кода для онлайн-аукциона.

Учебное пособие по JavaScript onClick() с примерами — POFTUT. ELEMENT is Auto click a button - JavaScript - SitePoint Forums Web 17 03 2018 · Привет, я хочу

Здравствуйте, мне нужна помощь в поиске расширения или способа заставить Chrome нажимать кнопку каждые 125 секунд, но я не могу его найти. Я пробовал…

В этом видеоролике показано, как использовать Auto Clicker для щелчка по местоположению курсора. Как автоматизировать клики с помощью JavaScript, Томас Молнар-Брок Стартап

Шаг 1. Запустите Google Chrome. Я продемонстрирую это, создав простую функцию для нажатия кнопки на этом веб-сайте, который я создал, но вы должны быть

для моей страницы ISQL*Plus мне нужен ярлык, чтобы нажать кнопку (Выполнить) после написания команд SQL, я пытался узнать об этом, но думаю, что мне нужно

Веб-автоматизация. Все, что вам нужно знать об автоматизации веб-тестов и процессов Все эти действия можно автоматизировать с помощью веб-автоматизации.

Я хочу нажать кнопку на веб-странице несколько раз, пока она не загрузится. Существуют ли какие-либо расширения или пользовательские скрипты, которые будут автоматически повторяться…

Бесплатная прямая загрузка файла Auto Click Auto Fill v2.2.1 CRX (Auto-Click-Auto-Fill.crx). Auto Click Auto Fill — бесплатный, полезный и увлекательный браузер

Автоматическое нажатие кнопки – JavaScript – Веб-форумы SitePoint. Есть ли у кого-нибудь java-скрипт для автоматического нажатия кнопок автозаполнения в коллекции для

Установите TamperMonkey; Добавьте новый скрипт, перейдя в домен и нажав кнопку Создать новый скрипт: эта кнопка. Вставьте следующие скрипты, это

Я пытаюсь создать скрипт и хочу знать, есть ли способ выполнить скрипт для автоматического запуска ClickDetector без ручного запуска

В этой статье описывается, как автоматизировать различные операции кликов на веб-сайте BrowserStack; Находит кнопку «Начать бесплатно» с помощью ее

Если бы кто-нибудь помог мне создать скрипт, который автоматически нажимал бы кнопку "Добавить в корзину" при посещении любого элемента на веб-сайте, я был бы счастлив

кнопка idclickMe onclickclicked() Нажмите кнопку здесь . document.getElementById(clickMe).click();. for (пусть i 0; i 1000; i++)

привет, я хочу использовать автоматическое нажатие кнопки greasmonkey после загрузки страницы. эта кнопка имеет следующие свойства: кнопка idbtnStartVisit onclickStartVisit(1)

Мне нужно настроить Google Chrome, чтобы он нажимал на определенную ссылку на определенном веб-сайте (или, что еще лучше, на веб-сайтах в определенных доменах), просто чтобы

привет, я хочу использовать автоматическое нажатие кнопки greasmonkey после загрузки страницы. эта кнопка 1- могу ли я использовать открытый URL-адрес Greasemonkey в определенное время? чтобы

Selenium может автоматически нажимать кнопки на веб-странице. Эта статья посвящена тому, как нажать любую кнопку с помощью Selenium в

Расширение Barebones для автоматического нажатия кнопки увеличения. Нажмет кнопку, как только загрузится новый чат. Взаимодействие с пользователем не требуется

Разместите интерактивный Python в любом месте в Интернете. настроить код Автонажатие кнопки – javascript – сайтфорумы веб-форумы Javascript автонажатие

Я использую Chrome с Windows 10. Будем признательны за любую помощь. Веб-сайт, который загружается в новой вкладке, всегда имеет один и тот же URL-адрес только с этим

Автоматизация действий браузера чрезвычайно полезна для повышения производительности действий браузера в Windows 10, вы нашли нужную веб-страницу.

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

Пузыри Да
Отменяемо Да
Интерфейс MouseEvent
Свойство обработчика событий onclick

Если кнопка нажата на одном элементе и указатель перемещается за пределы элемента до того, как кнопка будет отпущена, событие запускается для наиболее конкретного элемента-предка, который содержал оба элемента.

щелчок срабатывает после срабатывания событий mousedown и mouseup в указанном порядке.

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

У объекта MouseEvent, переданного в обработчик событий для щелчка, в свойстве Detail указано количество щелчков по цели. Другими словами, детализация будет равна 2 для двойного щелчка, 3 для тройного щелчка и так далее. Этот счетчик сбрасывается через короткий промежуток времени без каких-либо щелчков; особенности того, как долго этот интервал может варьироваться от браузера к браузеру и на разных платформах. Интервал также может зависеть от предпочтений пользователя; например, параметры специальных возможностей могут увеличить этот интервал, чтобы упростить выполнение нескольких кликов в адаптивных интерфейсах.

Интернет-обозреватель

В Internet Explorer 8 и 9 обнаружена ошибка, из-за которой элементы с вычисленным фоновым цветом, равным прозрачности, которые накладываются поверх других элементов, не получают события щелчка. Вместо этого любые события щелчка будут запускаться в базовом элементе (элементах). См. этот живой пример для демонстрации.

Известные обходные пути для этой ошибки:

  • Только для IE9:
    • Установить цвет фона: rgba(0,0,0,0)
    • Установите непрозрачность : 0 и явный фоновый цвет, отличный от прозрачности

    Сафари для мобильных устройств

    Safari Mobile 7.0+ (и, вероятно, более ранние версии) страдает от ошибки, из-за которой события щелчка не запускаются для элементов, которые обычно не являются интерактивными (например,

    ) и у которых также нет обработчиков событий, напрямую прикрепленных к самим элементам (т. е. используется делегирование событий). См. этот живой пример для демонстрации. См. также документы Safari о том, как сделать элементы интерактивными, и определение «кликабельного элемента».

    Известные обходные пути для этой ошибки:

    • Установить курсор: указатель; для элемента или любого из его предков.
    • Добавьте фиктивный атрибут onclick="void(0)" к элементу или любому из его предков до , но не включая его.
    • Используйте обычно интерактивный элемент (например, ) вместо обычного интерактивного элемента (например,

    Safari Mobile считает следующие элементы обычно интерактивными (поэтому эта ошибка не затрагивает их):

    Читайте также: