Исключения addEventListener

Итак, я сделал сайт и добавляю addEventListener по клику, но на сайте есть 2 кнопки, и я бы хотел, чтобы он работал только на 1.

// Installing handler on click
document.querySelector('.my-open-trigger').addEventListener('click', evt => {
  evt.preventDefault()
  // Open authorization
  sa.open()
}, false)

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

обе кнопки имеют одинаковый класс? Предоставьте html-код

ellipsis 07.02.2019 19:12
document.querySelector('.my-open-trigger') выберет первый элемент с class = "my-open-trigger" и проигнорирует все остальные. Для выбора второго элемента нужен document.querySelectorAll('.my-open-trigger')[1]. Но лучше использовать идентификатор.
Chris G 07.02.2019 19:16
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
2
68
1

Ответы 1

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

<div id = "DivId">
THIS WILL RUN IT
</div>

document.getElementById("DivId").addEventListener('click', evt => {
  evt.preventDefault()
  // Open authorization
  sa.open()
}, false)

Вам нужно определить, что такое sa.Open. Когда я попробовал это, он запустился, но я предположил, что вы уже настроили sa.open(); Также должен быть ';' после preventDefault и sa.open(). Нажмите F12, и он покажет вам ошибку под консолью.

Christopher Vickers 08.02.2019 11:23

Другие вопросы по теме