当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JQuery .contextmenu()用法及代码示例


用法
.contextmenu( handler ) => jQuery

说明:将事件处理程序绑定到 "contextmenu" JavaScript 事件,或在元素上触发该事件。

  • 添加的版本:1.0.contextmenu( handler )

    • handler
      类型:Function(Event eventObject)
      每次触发事件时执行的函数。
  • 添加的版本:1.4.3.contextmenu( [eventData ], handler )

    • eventData
      类型:Anything
      包含将传递给事件处理程序的数据的对象。
    • handler
      类型:Function(Event eventObject)
      每次触发事件时执行的函数。
  • 添加的版本:1.0.contextmenu()

    • 此签名不接受任何参数。

此方法是前两个变体中.on( "contextmenu", handler ) 和第三个变体中.trigger( "contextmenu" ) 的快捷方式。 contextmenu 事件在单击鼠标右键时发送到元素,但在显示上下文菜单之前。如果按下上下文菜单键,则会在 html 元素或当前聚焦的元素上触发事件。任何 HTML 元素都可以接收此事件。例如,考虑 HTML:

<div id="target">
  Right-click here
</div>

事件处理程序可以绑定到<div>,如下所示:

$( "#target" ).contextmenu(function() {
  alert( "Handler for .contextmenu() called." );
});

现在此元素上的 right-clicking 显示警报:

.contextmenu() 的处理程序被调用。

要手动触发事件,请在不带参数的情况下调用 .contextmenu()

$( "#target" ).contextmenu();

其他注意事项:

  • 由于 .contextmenu() 方法只是 .on( "contextmenu", handler ) 的简写,因此可以使用 .off( "contextmenu" ) 进行分离。

例子:

显示“Hello World!”在页面上的段落上触发 contextmenu 事件时的警报框:

$( "p" ).contextmenu(function() {
  alert( "Hello World!" );
});

右键单击以切换背景颜色。

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>contextmenu demo</title>
  <style>
  div {
    background: blue;
    color: white;
    height: 100px;
    width: 150px;
 }
  div.contextmenu {
    background: yellow;
    color: black;
  }
  </style>
  <script src="https://code.jquery.com/jquery-3.5.0.js"></script>
</head>
<body>
 
<div></div>
<span>Right click the block</span>
 
<script>
var div = $( "div" ).first();
div.contextmenu(function() {
  div.toggleClass( "contextmenu" );
});
</script>
 
</body>
</html>

演示:

相关用法


注:本文由纯净天空筛选整理自jquery.com大神的英文原创作品 .contextmenu()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。