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 12 jQuery
使用jQuery.Pin垂直滚动时固定导航
May 24 jQuery
jQuery插件imgAreaSelect基础讲解
May 26 jQuery
jQuery Ajax使用FormData上传文件和其他数据后端web.py获取
Jun 11 jQuery
JavaScript实现离开页面前提示功能【附jQuery实现方法】
Sep 26 jQuery
集成vue到jquery/bootstrap项目的方法
Feb 10 jQuery
详解jQuery中的isPlainObject()使用方法
Feb 27 jQuery
jQuery+Cookie实现切换皮肤功能【附源码下载】
Mar 25 jQuery
jquery ajax加载数据前台渲染方式 不用for遍历的方法
Aug 09 jQuery
jquery分页插件pagination使用教程
Oct 23 jQuery
jQuery实现雪花飘落效果
Aug 02 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
PHP与javascript的两种交互方式
2006/10/09 PHP
php 多个submit提交表单 处理方法
2009/07/07 PHP
使用PHP 5.0创建图形的巧妙方法
2010/10/12 PHP
PHP循环语句笔记(foreach,list)
2011/11/29 PHP
yii框架通过控制台命令创建定时任务示例
2014/04/30 PHP
CI框架的安全性分析
2016/05/18 PHP
PHP基于curl post实现发送url及相关中文乱码问题解决方法
2017/11/25 PHP
原生Js与jquery的多组处理, 仅展开一个区块的折叠效果
2011/01/09 Javascript
JSON.stringify 语法实例讲解
2012/03/14 Javascript
用Javascript实现Windows任务管理器的代码
2012/03/27 Javascript
jquery可见性过滤选择器使用示例
2013/06/24 Javascript
JavaScript中window、doucment、body的解释
2013/08/14 Javascript
写JQuery插件的基本知识
2013/11/25 Javascript
JS使用for循环遍历Table的所有单元格内容
2014/08/21 Javascript
用队列模拟jquery的动画算法实例
2015/01/20 Javascript
JavaScript获取页面中表单(form)数量的方法
2015/04/03 Javascript
Node.js中的require.resolve方法使用简介
2017/04/23 Javascript
jQuery输入框密码的显示隐藏【代码分享】
2017/04/29 jQuery
浅谈Vue.nextTick 的实现方法
2017/10/25 Javascript
详解nodejs 配置文件处理方案
2019/01/02 NodeJs
JavaScript setInterval()与setTimeout()计时器
2019/12/27 Javascript
[10:34]DOTA2上海特级锦标赛全纪录
2016/03/25 DOTA
[51:29]完美世界DOTA2联赛循环赛 Matador vs Forest BO2第一场 11.05
2020/11/05 DOTA
python实现根据用户输入从电影网站获取影片信息的方法
2015/04/07 Python
python字典多键值及重复键值的使用方法(详解)
2016/10/31 Python
Python3操作SQL Server数据库(实例讲解)
2017/10/21 Python
django 使用 PIL 压缩图片的例子
2019/08/16 Python
python协程gevent案例 爬取斗鱼图片过程解析
2019/08/27 Python
python中通过pip安装库文件时出现“EnvironmentError: [WinError 5] 拒绝访问”的问题及解决方案
2020/08/11 Python
设置器与访问器的定义以及各自特点
2016/01/08 面试题
这76道Java面试题及答案,祝你能成功通过面试
2016/04/16 面试题
现金出纳岗位职责
2014/03/15 职场文书
交通安全横幅标语
2014/10/07 职场文书
2015年爱国卫生工作总结
2015/04/22 职场文书
python turtle绘制多边形和跳跃和改变速度特效
2022/03/16 Python
Redis 哨兵机制及配置实现
2022/03/25 Redis