jQuery自定义元素右键点击事件(实现案例)


Posted in jQuery onApril 28, 2017

大多数情况下我们使用左键来进行页面交互,而右键大部分对于开发者来说是审查元素的,有的时候我们也要自定义鼠标右键点击行为来达到更好的交互性,常见的有漫画左键前进、右键后退。

第一步我们要屏蔽浏览器默认的右键点击行为,即阻止弹出框。

首先要将阻止弹出函数绑定到目标元素上:

//阻止浏览器默认右键点击事件
$("div").bind("contextmenu", function(){
  return false;
})

如此一来,div元素的右击事件就被屏蔽了,而浏览器其他区域不受影响,如果你想在整个页面屏蔽右击事件,只需这样做:

document.oncontextmenu = function() {
  return false;
}

接下来就可以为元素绑定右击响应函数了:

$("div").mousedown(function(e) {
  console.log(e.which);
  //右键为3
  if (3 == e.which) {
    $(this).css({
      "font-size": "-=2px"
    });
  } else if (1 == e.which) {
    //左键为1
    $(this).css({
      "font-size": "+=3px"
    });
  }
})

示例效果为右击字体缩小,左击字体变大,且其它区域可以响应默认右击事件。

完整代码:

<head>
  <style type="text/css">
  div{
    font-size:20px;
  }
  </style>
  <script src="../jquery.js"></script>
  <script>
  $(function() {
    //阻止浏览器默认右键点击事件
    /*document.oncontextmenu = function() {
      return false;
    }*/
    //某元素组织右键点击事件
    $("div").bind("contextmenu", function(){
      return false;
    })
    $("div").mousedown(function(e) {
      console.log(e.which);
      //右键为3
      if (3 == e.which) {
        $(this).css({
          "font-size": "-=2px"
        });
      } else if (1 == e.which) {
        //左键为1
        $(this).css({
          "font-size": "+=3px"
        });
      }
    })
  })
  </script>
</head>

<body>
  <div>
    div
  </div>
</body>

以上这篇jQuery自定义元素右键点击事件(实现案例)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
jQuery实现文章图片弹出放大效果
Apr 06 jQuery
jQuery zTree树插件动态加载实例代码
May 11 jQuery
jQuery查找dom的几种方法效率详解
May 17 jQuery
JavaScript之事件委托实例(附原生js和jQuery代码)
Jul 22 jQuery
jQuery事件对象的属性和方法详解
Sep 09 jQuery
jQuery中常用动画效果函数知识点整理
Aug 19 jQuery
jquery.param()实现数组或对象的序列化方法
Oct 08 jQuery
jQuery each和js forEach用法比较
Feb 27 jQuery
jQuery实现form表单基于ajax无刷新提交方法实例代码
Nov 04 jQuery
基于ajax及jQuery实现局部刷新过程解析
Sep 12 jQuery
jquery+ajax实现异步上传文件显示进度条
Aug 17 jQuery
jQuery实现简单弹幕制作
Dec 10 jQuery
jQuery实现动态添加、删除按钮及input输入框的方法
Apr 27 #jQuery
jquery ui sortable拖拽后保存位置
Apr 27 #jQuery
jquery 禁止鼠标右键并监听右键事件
Apr 27 #jQuery
jQuery EasyUI tree增加搜索功能的实现方法
Apr 27 #jQuery
JS/jquery实现一个网页内同时调用多个倒计时的方法
Apr 27 #jQuery
jQuery使用正则验证15/18身份证的方法示例
Apr 27 #jQuery
jQuery鼠标悬停内容动画切换效果
Apr 27 #jQuery
You might like
vBulletin Forum 2.3.xx SQL Injection
2006/10/09 PHP
PHP 远程关机实现代码
2009/11/10 PHP
PHP中array_map与array_column之间的关系分析
2014/08/19 PHP
使用纯php代码实现页面伪静态的方法
2015/07/25 PHP
thinkphp3.x中cookie方法的用法分析
2016/05/19 PHP
借用Google的Javascript API Loader来加速你的网站
2009/01/28 Javascript
js计算页面刷新的次数
2009/07/20 Javascript
jQuery Ajax提交表单查询获得数据实例代码
2012/09/19 Javascript
js实现俄罗斯方块小游戏分享
2014/01/31 Javascript
nodejs批量修改文件编码格式
2015/01/22 NodeJs
JavaScript更改字符串的大小写
2015/05/07 Javascript
JS排序方法(sort,bubble,select,insert)代码汇总
2016/01/30 Javascript
浅谈js中StringBuffer类的实现方法及使用
2016/09/02 Javascript
JavaScript算法系列之快速排序(Quicksort)算法实例详解
2016/09/04 Javascript
JavaScript三种绑定事件方式及相互之间的区别分析
2017/01/10 Javascript
vue父组件点击触发子组件事件的实例讲解
2018/02/08 Javascript
浅谈FastClick 填坑及源码解析
2018/03/02 Javascript
Javascript 之封装(Package)
2018/09/14 Javascript
layui 实现自动选择radio单选框(checked)的方法
2019/09/03 Javascript
通过实例了解JS 连续赋值
2019/09/24 Javascript
vue或react项目生产环境去掉console.log的操作
2020/09/02 Javascript
浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑
2020/09/12 Javascript
[42:24]完美世界DOTA2联赛循环赛 LBZS vs DM BO2第一场 11.01
2020/11/02 DOTA
Python实现爬取知乎神回复简单爬虫代码分享
2015/01/04 Python
Python大数据之网络爬虫的post请求、get请求区别实例分析
2019/11/16 Python
python 邮件检测工具mmpi的使用
2021/01/04 Python
美国最好的钓鱼、狩猎和划船装备商店:Bass Pro Shops
2018/12/02 全球购物
大二自我鉴定
2014/01/31 职场文书
餐厅总厨求职信
2014/03/04 职场文书
横幅标语大全
2014/06/17 职场文书
家长会欢迎标语
2014/06/24 职场文书
开幕式邀请函
2015/01/31 职场文书
导游词之南京中山陵
2019/11/27 职场文书
Python集合的基础操作
2021/11/01 Python
Mysql中一千万条数据怎么快速查询
2021/12/06 MySQL
Python中的matplotlib绘制百分比堆叠柱状图,并为每一个类别设置不同的填充图案
2022/04/20 Python