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 相关文章推荐
JavaScript入门教程(5) js Screen屏幕对象
Jan 31 Javascript
iframe调用父页面函数示例详解
Jul 17 Javascript
JavaScript学习笔记之JS函数
Jan 22 Javascript
javascript跨域原因以及解决方案分享
Apr 08 Javascript
jQuery上传插件webupload使用方法
Aug 01 jQuery
JS如何实现在页面上快速定位(锚点跳转问题)
Aug 14 Javascript
vue + element-ui实现简洁的导入导出功能
Dec 22 Javascript
利用React Router4实现的服务端直出渲染(SSR)
Jan 07 Javascript
vue+element实现表单校验功能
May 20 Javascript
JavaScript字符串转数字的简单实现方法
Nov 27 Javascript
微信小程序实现首页弹出广告
Dec 03 Javascript
Javascript设计模式之原型模式详细
Oct 05 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
利用static实现表格的颜色隔行显示
2006/10/09 PHP
PHP+jQuery翻板抽奖功能实现
2015/10/19 PHP
PHP中STDCLASS用法实例分析
2016/11/11 PHP
js自定义事件及事件交互原理概述(一)
2013/02/01 Javascript
jquery计算鼠标和指定元素之间距离的方法
2015/06/26 Javascript
javascript实现的闭包简单实例
2015/07/17 Javascript
极力推荐10个短小实用的JavaScript代码段
2016/08/03 Javascript
使用jquery/js获取iframe父子级、同级获取元素的方法
2016/08/05 Javascript
ros::spin() 和 ros::spinOnce()函数的区别及详解
2016/10/01 Javascript
详解js中Json的语法与格式
2016/11/22 Javascript
手机端转换rem适应
2017/04/01 Javascript
vue2.X组件学习心得(新手必看篇)
2017/07/05 Javascript
React Native中TabBarIOS的简单使用方法示例
2017/10/13 Javascript
微信小程序Echarts图表组件使用方法详解
2019/06/25 Javascript
微信小程序连接服务器展示MQTT数据信息的实现
2020/07/14 Javascript
JS实现鼠标按下拖拽效果
2020/07/23 Javascript
[51:26]VP vs VG 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
python 七种邮件内容发送方法实例
2014/04/22 Python
Python中运算符&quot;==&quot;和&quot;is&quot;的详解
2016/10/08 Python
OPENCV去除小连通区域,去除孔洞的实例讲解
2018/06/21 Python
解决tensorflow测试模型时NotFoundError错误的问题
2018/07/26 Python
Python3.4 splinter(模拟填写表单)使用方法
2018/10/13 Python
Tensorflow 使用pb文件保存(恢复)模型计算图和参数实例详解
2020/02/11 Python
对CSS3选择器的研究(详解)
2016/09/16 HTML / CSS
Bose法国官网:购买耳机、扬声器、家庭影院、专业音响
2017/12/21 全球购物
C语言笔试题
2014/09/04 面试题
大学本科毕业生求职信范文
2013/12/18 职场文书
运动会广播稿500字
2014/01/28 职场文书
给校长的建议书
2014/03/12 职场文书
法人代表委托书
2014/04/04 职场文书
2014年幼儿园教学工作总结
2014/12/04 职场文书
党员自评材料范文
2014/12/17 职场文书
学校会议通知范文
2015/04/15 职场文书
惊涛骇浪观后感
2015/06/05 职场文书
2019假期福利管理制度!
2019/07/15 职场文书
微信小程序纯CSS实现无限弹幕滚动效果
2022/09/23 HTML / CSS