【问题标题】:Ctrl or Shift effects on the `onclick` event of an anchor tag in each browserCtrl 或 Shift 对每个浏览器中锚标记的 `onclick` 事件的影响
【发布时间】:2011-03-02 17:11:09
【问题描述】:

我最近发现,当按下 ControlShift 键时,不同的浏览器会以不同的方式处理 onclick 事件。它们在通过单击鼠标中键来跟踪链接的行为上也存在类似差异。

通过以下链接:

<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 的每个版本的行为是否不同。

在这种行为中找到逻辑模式会更好,但不幸的是,我认为没有。 :)

【问题讨论】:

    标签: javascript events onclick shift ctrl


    【解决方案1】:

    有关相关问题,请参阅my answer

    这是由于用户使用单击修饰符键盘按钮时的“预期行为” - 用户期望 Ctrl+单击链接以在新选项卡或窗口中打开该链接。 Microsoft 的小伙子们认为,用户会 Ctrl+click 的唯一原因是他们期待这种行为,因此,此类点击不会在 Internet Explorer 中触发 onclick 事件。

    【讨论】:

    • 顺便说一句:我无意改变网络浏览器的行为。我只需要测量商业点击(通过一些 JavaScript 库)。我通过事件处理程序为 IE7 和 IE8 工作。但我对 IE5.5 和 IE9 的行为很好奇。还;因为标签式浏览越来越流行(也通过右键单击)。所以有一天我们将不得不切换到重定向方法。
    • 他们又来了……认为他们比应用程序的实际开发者更了解用户的期望。
    猜你喜欢
    • 2021-10-09
    • 2011-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多