Ctrl или эффекты Shift на 'onclick' событие тега привязки в каждом браузере

Я недавно обнаружил, что различные браузеры обрабатывают onclick событие по-другому, когда Клавиши CTRL или клавиши Shift нажимаются. Они отличаются так же на поведении для для следующих ссылок путем щелчка средней кнопкой мыши.

Со следующей ссылкой:

<a href="http://www.example.com/" onclick="alert('onclick');">go to example.com</a>

Таблица поддержки браузера Onclick

Mouse    Keyboard       Chrome    Firefox   Safari    Opera     IE5.5     IE6       IE7       IE8       IE9       

Left     None           yes       yes       yes       yes       yes       yes       yes       yes       yes
Left     Ctrl           yes       yes       yes       yes       ?         yes       no        no        ?
Left     Shift          yes       yes       yes       yes       ?         yes       yes       yes       ?
Middle   None           yes       no        yes       no        ?         N/A       no        no        ?

Кто-то может заполнить вопросительные знаки для меня? Также; я задаюсь вопросом, отличается ли поведение для каждой версии Chrome, Firefox, Safari и Opera.

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

6
задан Troy Alford 22 April 2013 в 20:25
поделиться

1 ответ

См. мой ответ на связанный вопрос.

Это связано с «ожидаемым поведением», когда пользователь использует кнопки клавиатуры с модификатором нажатия - пользователь ожидает Ctrl + щелчок по ссылке, чтобы открыть эту ссылку в новой вкладке или окне. Руководители Microsoft решили, что единственная причина, по которой пользователь будет Ctrl + щелчок, потому что они ожидали такого поведения, таким образом, такие щелчки не вызывают событие onclick в Internet Explorer.

2
ответ дан 17 December 2019 в 20:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: