欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

firefox下禁止鼠标中键事件无效解决办法

更新时间: 2014-01-05 01:57:42 责任编辑: Author_N1

 

firefox下禁止鼠标中键事件无效
大家好,我想禁止页面中的鼠标中键点击拖曳的动作
所以就想禁止页面中的鼠标中键点击,写了这个函数,在IE CHROME都OK
但是FF没有作用,FF已经判断到了e.which为2,能打印出1,但是依然能拖曳
让我很惆怅,已经在网上搜了很多时间,没有解决方法
不是伸手党,努力无果,求高手指点...谢谢

JScript code

$(function(){
$(window).mousedown(function(e){
    if(e.which == 2) // 1 = 鼠标左键 left; 2 = 鼠标中键; 3 = 鼠标右键
                alert("1");
        return false;//阻止链接跳转
    })
    return false;
})




--参考方法--
可能是个BUG,下面的代码也阻止不了。。
JScript code
$(function() {
    $(window).mousedown(function(e) {
        if (e.which == 2) { // 1 = 鼠标左键 left; 2 = 鼠标中键; 3 = 鼠标右键
            //alert(e.cancelable); //true,说明该事件是可以被取消的
            e.preventDefault();
            return false; //阻止链接跳转
        }
    });
    return false;
});

--参考方法--
借用的
http://topic.csdn.net/u/20120513/20/154acc79-6d63-420f-9aa7-d0f2262df18d.html
例子
HTML code

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>拖动</title>
<style type="text/css">
*{ margin:0; padding:0;}
html,body{ height:100%; width:100%; font-size:12px;}
#picrun{ position:absolute; top:10px; height:100px; left:100px; width:500px; overflow:hidden;}
#picrun li{ list-style:none; float:left; margin-left:12px; text-align:center; background:#FFF; width:100px;}
#picrun img{ width:100px; height:60px; border:none;display:block; padding-bottom:3px;}
</style>
</head>

<body>
<div id="container">

</div>
<div id="picrun">
    <ul id="li_img">
        <li><a href=""><img src="http://www.baidu.com/img/513_01d1df20e56f282ab5104866d0a718de.gif" /></a>1这里哪个厅</li>
        <li><a href=""><img src="http://www.baidu.com/img/513_01d1df20e56f282ab5104866d0a718de.gif" /></a>2哪个厅这个</li>
        <li><a href="http://www.baidu.com"><img src="http://www.baidu.com/img/513_01d1df20e56f282ab5104866d0a718de.gif" /></a>3这里哪个厅</li>
        <li><a href=""><img src="http://www.baidu.com/img/513_01d1df20e56f282ab5104866d0a718de.gif" /></a>4哪个厅这个</li>
        <li><a href=""><img src="http://www.baidu.com/img/513_01d1df20e56f282ab5104866d0a718de.gif" /></a>5这里哪个厅</li>
        <li><a href=""><img src="http://www.baidu.com/img/513_01d1df20e56f282ab5104866d0a718de.gif" /></a>6哪个厅这个</li>
        <li><a href=""><img src="http://www.baidu.com/img/513_01d1df20e56f282ab5104866d0a718de.gif" /></a>7这里哪个厅</li>
        <li><a href=""><img src="http://www.baidu.com/img/513_01d1df20e56f282ab5104866d0a718de.gif" /></a>8哪个厅这个</li>
        <li><a href=""><img src="http://www.baidu.com/img/513_01d1df20e56f282ab5104866d0a718de.gif" /></a>这里哪个厅</li>
        <li><a href=""><img src="http://www.baidu.com/img/513_01d1df20e56f282ab5104866d0a718de.gif" /></a>哪个厅这个</li>
        <li><a href=""><img src="http://www.baidu.com/img/513_01d1df20e56f282ab5104866d0a718de.gif" /></a>这里哪个厅</li>
    </ul>
</div>
<script type="text/javascript">
var picrun=document.getElementById("picrun");
var li_img=document.getElementById("li_img");
var li=li_img.getElementsByTagName("li");
var ig=li_img.getElementsByTagName("img");
var li_w=li[0].clientWidth+12;
li_img.style.width=li_w*li.length+"px";
function Move(o, e){
    var e = window.event || e;
    var _sx = e.clientX;
    var _xx = picrun.scrollLeft;
    document.onmouseup = function(){
            this.onmousemove = null;
    }
    if(e.preventDefault){
            e.preventDefault();
    }
    document.onmousemove = function(e){
            var e = window.event || e;
            if(document.all && e.button == 0){
                    this.onmousemove = null;
                    return false;
            };
            picrun.scrollLeft =_xx - e.clientX + _sx;
            o.setAttribute('IsMove', 'true');
            return false;
    }
}
for(i=0;i<ig.length;i++){
    (function(n){
        ig[n].onmousedown = function(e){
            e = window.event || e;
            var w = e.which || e.button;
            if( w == 2){
                return false;
            }
            ig[n].setAttribute('IsMove', 'false');
            return Move(ig[n], e);
        }
        ig[n].onclick = function(){
            if(this.getAttribute('IsMove') == 'true'){                
                return false;
            }
        }
    })(i)
}
</script>
</body>
</html> 			
			
		
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 01:57:42
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/3726/
本文WWW.DOC100.NET DOC100.NET版权所有。