Js实现自定义右键行为


Posted in Javascript onMarch 26, 2015

自定义右键行为(通过事件对象获得鼠标的坐标(x,y))

<!doctype html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>demo</title>
    <style type="text/css">
      html{
        height:100%;
      }
      body{
        height:100%;
      }
      #mydiv{
        width:300px;
        height:300px;
        background-color: #ff7400;
      }
      #ctxMenu{
        background-color: #ff7400;
        list-style-type: none;
        position: absolute;
        padding:0px;
        border:1px solid #000;
        visibility: hidden;
      }
    </style>
  </head>
  <body>
    <div id="mydiv"></div>
    <h2 id="show"></h2>
    <input type="text"id="txt"><span id="help"></span>
    <ul id="ctxMenu">
      <li>上传</li>
      <li>下载</li>
      <li>新建</li>
      <li>取消</li>
    </ul>
    <script type="text/javascript">
      var $=function(id){
        return document.getElementById(id);
      };
      var h2=$("show");
      var ctx=$("ctxMenu");
      var txt=$("txt");
      var help=$("help");
      /*
      txt.onfocus=function(){
        help.innerHTML="请输入金额";
      }
      txt.onkeydown=function(event){
        help.innerHTML="";
        var code=event.keyCode;
        if(!(code>=48&&code<=57||code>=96&&code<=105||code==46||code==8||code==13||code==37||code==39||code==110||code==190)){
          event.preventDefault();
        }
      }
      */
      document.body.oncontextmenu=function(event){
        event.preventDefault();
        var x=event.pageX;
        var y=event.pageY;
        ctx.style.left=x+"px";
        ctx.style.top=y+"px";
        ctx.style.visibility="visible";
      }
      document.body.onclick=function(){
        ctx.style.visibility="hidden";
      }
      /*
      document.body.onmousemove=function(event){
        var x=event.pageX;
        var y=event.pageY;
        h2.innerHTML=x+":"+y;
      }
      */
      window.onbeforeunload=function(){
        var v=$("txt").value;
        if(v){
          return "";
        }
      }
      $("mydiv").onclick=function(){
        $("show").innerHTML="click";
      };
      $("mydiv").ondblclick=function(){
        $("show").innerHTML="dblclick";
      };
      $("mydiv").onmouseover=function(){
        $("show").innerHTML="mouseover";
        this.style.backgroundColor="#2d2d2d";
      };
      $("mydiv").onmouseout=function(){
        $("show").innerHTML="mouseout";
        this.style.backgroundColor="pink";
      }
    </script>
  </body>
</html>

以上就是本文给大家分享的全部内容了,希望大家能够喜欢。

请您花一点时间将文章分享给您的朋友或者留下评论。我们将会由衷感谢您的支持!

Javascript 相关文章推荐
一个基于jquery的图片切换效果
Jul 06 Javascript
jquery 实现上下滚动效果示例代码
Aug 09 Javascript
js实现回放拖拽轨迹从过程上进行分析
Jun 26 Javascript
javascript入门教程基础篇
Nov 16 Javascript
JS实现图片垂直居中显示小结
Dec 13 Javascript
jq stop()和:is(:animated)的用法及区别(详解)
Feb 12 Javascript
js实现数字递增特效【仿支付宝我的财富】
May 05 Javascript
vue拖拽排序插件vuedraggable使用方法详解
Aug 21 Javascript
vue+moment实现倒计时效果
Aug 26 Javascript
javascript实现蒙版与禁止页面滚动
Jan 11 Javascript
js中调用微信的扫描二维码功能的实现代码
Apr 11 Javascript
JS函数式编程实现XDM一
Jun 16 Javascript
jQuery使用addClass()方法给元素添加多个class样式
Mar 26 #Javascript
Jquery异步提交表单代码分享
Mar 26 #Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
Mar 26 #Javascript
jQuery使用CSS()方法给指定元素同时设置多个样式
Mar 26 #Javascript
12306验证码破解思路分享
Mar 25 #Javascript
jQuery获得包含margin的outerWidth和outerHeight的方法
Mar 25 #Javascript
jQuery获得document和window对象宽度和高度的方法
Mar 25 #Javascript
You might like
PHP写入WRITE编码为UTF8的文件的实现代码
2008/07/07 PHP
php解析url的三个示例
2014/01/20 PHP
采用memcache在web集群中实现session的同步会话
2014/07/05 PHP
PHP生成静态HTML文档实现代码
2016/06/23 PHP
Zend Framework实现自定义过滤器的方法
2016/12/09 PHP
PHP使用Redis实现防止大并发下二次写入的方法
2017/10/09 PHP
cssQuery()的下载与使用方法
2007/01/12 Javascript
jQuery实现form表单reset按钮重置清空表单功能
2012/12/18 Javascript
jquery获取当前元素索引值用法实例
2015/06/10 Javascript
jquery实现不包含当前项的选择器实例
2015/06/25 Javascript
由ReactJS的Hello world说开来
2015/07/02 Javascript
chrome浏览器当表单自动填充时如何去除浏览器自动添加的默认样式
2015/10/09 Javascript
使用jQuery处理AJAX请求的基础学习教程
2016/05/10 Javascript
原生js实现密码输入框值的显示隐藏
2017/07/17 Javascript
Javascript中toFixed计算错误(依赖银行家舍入法的缺陷)解决方法
2017/08/22 Javascript
jquery animate动画持续运动的实例
2017/11/29 jQuery
Node.js实现注册邮箱激活功能的方法示例
2018/03/23 Javascript
vuex的数据渲染与修改浅析
2020/11/26 Vue.js
[04:02]DOTA2上海特锦赛小组赛第二日recap精彩回顾
2016/02/28 DOTA
[04:59]DOTA2-DPC中国联赛 正赛 Ehome vs iG 选手采访
2021/03/11 DOTA
详解用python写一个抽奖程序
2019/05/10 Python
Numpy的简单用法小结
2019/08/28 Python
Python无损压缩图片的示例代码
2020/08/06 Python
Pycharm如何自动生成头文件注释
2020/11/14 Python
Python第三方库安装缓慢的解决方法
2021/02/06 Python
宝拉珍选英国官网:Paula’s Choice英国
2019/05/29 全球购物
英国最大的在线照明商店:Litecraft
2020/08/31 全球购物
文员个人的求职信范文
2013/09/26 职场文书
专升本个人自我评价
2013/12/22 职场文书
集体婚礼证婚词
2014/01/13 职场文书
教师网络培训感言
2014/03/09 职场文书
国际贸易毕业生自荐书
2014/06/22 职场文书
2014入党积极分子批评与自我批评思想汇报
2014/09/20 职场文书
2015年度优秀员工获奖感言
2015/07/31 职场文书
2016学习依法治国心得体会
2016/01/15 职场文书
详解在SQLPlus中实现上下键翻查历史命令的功能
2022/03/18 SQL Server