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+XMLHttpRequest+asp.net无刷新读取数据库数据
Aug 09 Javascript
Jquery公告滚动+AJAX后台得到数据
Apr 14 Javascript
深入理解javaScript中的事件驱动
May 21 Javascript
JavaScript中的值类型转换介绍
Dec 31 Javascript
20分钟打造属于你的Bootstrap站点
Jul 27 Javascript
利用jQuery实现打字机字幕效果实例代码
Sep 02 Javascript
express文件上传中间件Multer详解
Oct 24 Javascript
实现easyui的datagrid导出为excel的示例代码
Nov 10 Javascript
ionic进入多级目录后隐藏底部导航栏(tabs)的完美解决方案
Nov 23 Javascript
js时间戳转yyyy-MM-dd HH-mm-ss工具类详解
Apr 30 Javascript
JS实现前端路由功能示例【原生路由】
May 29 Javascript
javascript实现时间日期的格式化的方法汇总
Aug 06 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
免费的ip数据库淘宝IP地址库简介和PHP调用实例
2014/04/08 PHP
PHP实现将HTML5中Canvas图像保存到服务器的方法
2014/11/28 PHP
PHP获取数组最后一个值的2种方法
2015/01/21 PHP
tp5(thinkPHP5框架)时间查询操作实例分析
2019/05/29 PHP
jquery键盘事件使用介绍
2011/11/01 Javascript
node.js中的path.join方法使用说明
2014/12/08 Javascript
原生javascript实现简单的datagrid数据表格
2015/01/02 Javascript
基于豆瓣API+Angular开发的web App
2015/01/02 Javascript
js实现图片漂浮效果的方法
2015/03/02 Javascript
javascript中的previousSibling和nextSibling的正确用法
2015/09/16 Javascript
老生常谈js动态添加事件--- 事件委托
2016/07/19 Javascript
详解js实现线段交点的三种算法
2016/08/09 Javascript
Bootstrap中的Dropdown下拉菜单更改为悬停(hover)触发
2016/08/31 Javascript
微信小程序 轮播图swiper详解及实例(源码下载)
2017/01/11 Javascript
jQuery的ajax中使用FormData实现页面无刷新上传功能
2017/01/16 Javascript
react router 4.0以上的路由应用详解
2017/09/21 Javascript
使用JS代码实现俄罗斯方块游戏
2018/08/03 Javascript
详解Vue2.0组件的继承与扩展
2018/11/23 Javascript
JavaScript解析机制与闭包原理实例详解
2019/03/08 Javascript
AjaxFileUpload.js实现异步上传文件功能
2019/04/19 Javascript
Layui 动态禁止select下拉的例子
2019/09/03 Javascript
[01:38]DOTA2辉夜杯 欢乐的观众现场采访
2015/12/26 DOTA
python利用MethodType绑定方法到类示例代码
2017/08/27 Python
Python编程产生非均匀随机数的几种方法代码分享
2017/12/13 Python
Python单元测试简单示例
2018/07/03 Python
python控制台实现tab补全和清屏的例子
2019/08/20 Python
Tensorflow实现多GPU并行方式
2020/02/03 Python
python分别打包出32位和64位应用程序
2020/02/18 Python
俄罗斯最大的隐形眼镜销售网站:Ochkov.Net
2021/02/07 全球购物
将一个文本文件的内容按倒序打印出来
2015/01/05 面试题
公司拓展活动方案
2014/02/13 职场文书
机械制造专业大学生自我鉴定
2014/09/19 职场文书
2014院党委领导班子及其成员群众路线对照检查材料思想汇报
2014/10/04 职场文书
python使用openpyxl库读写Excel表格的方法(增删改查操作)
2021/05/02 Python
nginx安装以及配置的详细过程记录
2021/09/15 Servers
Python绘画好看的星空图
2022/03/17 Python