【问题标题】:Special mouse events in a browser: wheel, right-click?浏览器中的特殊鼠标事件:滚轮、右键单击?
【发布时间】:2010-10-05 12:24:33
【问题描述】:

Google 地图令人印象深刻地展示了您可以使用 JavaScript 和 Ajaxy 做些什么。甚至我的鼠标滚轮和右键单击也可以提供特定的功能。

在标准 HTML 规范中,我没有看到 onmouserightclick 事件或类似的鼠标滚轮的基本 JavaScript 处理。也许我找错地方了。

我认为这些事件是特定于浏览器和平台的(或“敏感”而不是特定的)。我想知道在所有浏览器中利用这些事件需要什么基本的纯 HTML 和 JavaScript。

当然,在设计网站时,这些功能必须是额外的,因为有些人仍然使用一键鼠标。

如何使用鼠标滚轮和右键单击事件?我正在寻找示例代码。

编辑:感谢 jQuery 代码家伙!不过,我的系统开发人员仍然有问题和疑虑。主要是我担心似乎适用于此的平台限制。是否有某些浏览器无法使用这些功能?鼠标滚轮向上和向下事件是否也允许鼠标滚轮单击事件?我只是希望那里会有一些限制,并且想知道它是否有正式记录。我想知道它在低级别是如何工作的。我很高兴看到它在 jQuery 中很容易,这是我进入它的另一个原因。

【问题讨论】:

    标签: javascript cross-browser sample mousewheel right-click


    【解决方案1】:

    鼠标滚轮
    ol' no-jquery-or-prototype-library 方法:here

    原型方法:Here

    jQuery方法:Here

    【讨论】:

      【解决方案2】:

      如果你使用 jQuery,用右键菜单做事非常简单:

      $(document).bind("contextmenu",function(e){
          alert("You right clicked!");
          return false; //disable the context menu
      });
      

      否则,您可以使用 quirskmode 提供的此脚本: http://www.quirksmode.org/js/events_properties.html#link6

      至于鼠标滚轮,这是我过去使用过的一个很棒的脚本:

      http://adomas.org/javascript-mouse-wheel/

      【讨论】:

        【解决方案3】:

        你说的是跨浏览器,所以你一定是指 jQuery :P

        http://www.ogonek.net/mousewheel/jquery-demo.html

        http://abeautifulsite.net/notebook_files/68/demo/

        我打赌你可以找到执行此操作的 JavaScript,但我认为使用组件(或插件)总是更好,因为它可能存在错误(或者可能是跨浏览器错误)并且制作它的人会收到一封电子邮件来自使用它并修复它的人。对于纯 JavaScript,您始终应该在每个浏览器的每个版本中检查它。

        【讨论】:

        • 该问题要求“基本、纯 HTML 和 Javascript”。也许我们主要对它的实际工作方式感兴趣,而不是看到另一个 jQuery 广告。
        • 那么为什么要跨浏览器呢?如果您不同意使用 jquery,能否请您在每个浏览器中发布如何做到这一点?
        猜你喜欢
        • 1970-01-01
        • 2013-02-02
        • 2021-09-10
        • 2012-08-20
        • 1970-01-01
        • 2011-05-30
        • 2014-01-03
        • 1970-01-01
        相关资源
        最近更新 更多