资讯专栏INFORMATION COLUMN

鼠标右键兼容MAC版火狐浏览器

jifei / 442人阅读

摘要:事件在版火狐浏览器下表现差异谷歌和其它浏览器打印复制阻止右键系统默认的弹出框除了火狐,在其他浏览器上的交互右键执行事件火狐是的时候执行抬起消失兼容写法思路阻止默认事件右键展示重写菜单左键隐藏

oncontextmenu事件 在MAC版火狐浏览器下表现差异
谷歌和其它浏览器
//css
    *{margin:0;padding:0;}
    #right-menu{position:absolute;width:150px;visibility:hidden;border:1px solid #bababa;box-shadow: 1px 1px 2px #8e8e8e;}
    #right-menu li{list-style:none;text-indent:1em;}
    #right-menu li a{display:block;height:30px;line-height:30px;text-decoration:none;color:#666;font-size: 12px;}
    #right-menu li a:hover{background:#ebebeb;color:black;}

//html


//js
document.oncontextmenu = function(e){
    if(window.event) e = window.event;
    var mymenu = document.getElementById("right-menu");
    mymenu.style.visibility = "visible";
    mymenu.style.left = e.clientX + 5 +"px";
    mymenu.style.top = e.clientY + 5 + "px";
    return false;//阻止右键系统默认的弹出框
};
document.onclick = function(){
    var mymenu = document.getElementById("right-menu");
    mymenu.style.visibility = "hidden"; 
}
//除了火狐,oncontextmenu在其他浏览器上的交互 右键mouseup 执行事件
//火狐是mousedown的时候执行 抬起消失
兼容写法
document.oncontextmenu = function(e){
    return false;
};
document.onmouseup=function(e) {
    var mymenu = document.getElementById("right-menu");
    if (!e) e=window.event;
    if (e.button==0) {
        mymenu.style.visibility = "hidden"; 
    }
    if (e.button==2) {
        mymenu.style.visibility = "visible";
        mymenu.style.left = e.clientX + 5 +"px";
        mymenu.style.top = e.clientY + 5 + "px";
    }
}

//思路 
1.阻止默认事件
2.mouseup 右键展示重写菜单 左键隐藏

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/102196.html

相关文章

  • JS基础篇--事件绑定及深入

    摘要:学习要点传统事件绑定的问题事件处理函数事件处理函数事件对象的其他补充事件绑定分为两种一种是传统事件绑定内联模型,脚本模型,一种是现代事件绑定级模型。现代事件绑定在传统绑定上提供了更强大更方便的功能。事件和事件事件和事件,有关加载方面的事件。 学习要点: 1.传统事件绑定的问题2.W3C事件处理函数3.IE事件处理函数4.事件对象的其他补充 事件绑定分为两种:一种是传统事件绑定(内联模型...

    yearsj 评论0 收藏0
  • web前端(2)—— 前端技术介绍

    摘要:前端技术前文了解了什么是前端,那么前端技术到底有哪些呢最核心的就这三个什么是,超文本标记语言,标准通用标记语言下的一个应用那么超文本标记语言又是什么呢哈哈,没完没了是吧,学习就是要这种没完没了的劲。前端技术 前文了解了什么是前端,那么前端技术到底有哪些呢?最核心的就这三个: html/html5 css/css3 javascript 什么是HTML HyperText Mark...

    番茄西红柿 评论0 收藏0
  • JavaScript 基础知识 - DOM篇(一)

    摘要:前言本篇文章是基础知识的篇,如果前面的基础知识入门篇看完了,现在就可以学习了。基本概念分为三个部分。在这个基础上使用一些新特性,高级浏览器支持,低级浏览器不支持。在对象中的属性是一个布尔值,只有和。 showImg(https://segmentfault.com/img/remote/1460000012581493?w=1920&h=1080); DOM 前言 本篇文章是JavaS...

    cuieney 评论0 收藏0
  • 通过Web安全工具Burp suite找出网站中的XSS漏洞实战(二)

    摘要:一背景笔者月份在慕课网录制视频教程跨站漏洞加强安全里面需要讲到很多实战案例,在漏洞挖掘案例中分为了手工挖掘工具挖掘代码审计三部分内容手工挖掘篇参考地址为快速找出网站中可能存在的漏洞实践一本文主要记录利用安全工具进行漏洞挖掘部分,分为了设置代 一、背景 笔者6月份在慕课网录制视频教程XSS跨站漏洞 加强Web安全,里面需要讲到很多实战案例,在漏洞挖掘案例中分为了手工挖掘、工具挖掘、代码审...

    klinson 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<