火狐下同时有onmousedown ondblclick事件,双击无效 关于火狐的Onclick事件,代码是没有问题的,在火狐上面O...

\u706b\u72d0\u4e0bwindow.close()\u65e0\u6548

html\u7f51\u9875\u5236\u4f5c\u53ef\u4ee5\u53c2\u8003W3C\u6807\u51c6 http://www.w3school.com.cn/w3c/w3c_html.asp

\u3000\u3000\u60a8\u597d\uff01\u5f88\u9ad8\u5174\u4e3a\u60a8\u7b54\u7591\uff01

\u3000\u3000\u5efa\u8bae\u5b89\u88c5Firebug\u63d2\u4ef6\uff0c\u5b83\u96c6HTML\u67e5\u770b\u548c\u7f16\u8f91\u3001Javascript\u63a7\u5236\u53f0\u3001\u7f51\u7edc\u72b6\u51b5\u76d1\u89c6\u5668\u4e8e\u4e00\u4f53\uff0c\u662f\u5f00\u53d1JavaScript\u3001CSS\u3001HTML\u548cAjax\u7684\u5f97\u529b\u52a9\u624b\u3002
\u3000\u3000\u60a8\u53ef\u4ee5\u5728\u706b\u72d0\u793e\u533a\u4e86\u89e3\u66f4\u591a\u5185\u5bb9\u3002\u5e0c\u671b\u6211\u7684\u56de\u7b54\u5bf9\u60a8\u6709\u6240\u5e2e\u52a9\uff0c\u5982\u6709\u7591\u95ee\uff0c\u6b22\u8fce\u7ee7\u7eed\u5728\u672c\u5e73\u53f0\u54a8\u8be2\u3002

在IE中,当鼠标单击一下分别触发事件如下:
mousedown
mouseup
click
如果双击下一共触发如下事件:
mousedown
mouseup
click
mouseup
dblclick

但是在firefox中,单击所触发的事件和IE是一样的
但是双击时触发的事件有所不同:firefox中双击实际上触发事件如下:
mousedown
mouseup
click
mousedown
mouseup
click
dblclick
两者比较下就可以看出浏览器不同所造成的差别。然后根据差别触发相应事件所做的操作进行一定的修改。

而且鼠标拖动时触发的时候不是onmousedown而是ondragstart、ondrag和ondragend 你可以把onmousedown所执行的方法放在ondragstart执行,这样的话就不会出现onmousedown和ondblclick之间的冲突,你双击而不拖动的话就不会去触发拖动相对应的ondragstart事件

目前只有windows上的IE支持上面所说的系统拖动,mozilla在基于XUL的页面上支持系统拖动,关于楼主要说的设置事件触发的优先级,本人才疏学浅没听到过,不过如果能够准确的控制onmousedown事件的触发和ondblclick事件的触发时刻,可以在js中定义个全局的布尔变量,然后通过首先对该布尔变量的判断来决定当你想要触发ondblclick事件的时候控制onmousedown事件相对应的方法不被执行。这样的话不知道能不能解决在dblclick事件触发前mousedown事件总是先触发执行的冲突。

楼主能不能告诉双击事件要做的操作是什么?

  您好!很高兴为您答疑!

  解决方法:

  思路: 在 onmousedown 用一个 setTimeout 延迟处理, 比如说在100毫秒里没有第二次点击则执行 onmousedown 否则执 ondblclick.

例子:
<a href="#" onclick="window.setTimeout('clickFun();',400)" ondblclick="dblclickFun();" >click</a>
<script>
var isDblClick=false;

function clickFun()
{
if(!isDblClick){
alert("click");
}else{
isDblClick=false;
}
}

function dblclickFun()
{
isDblClick=true;
alert("ondblclick");

}
  您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。

两外可以判断浏览器的类型,不同的浏览器执行不同的javascript代码! 基本上搜索一下,有现成的!

装个遨游试试 如果遨游行,证明是火狐插件问题

应该是可以在浏览器里直接设置优先级的吧!

  • JS鍦鐏嫄涓澶辨晥鎬庝箞瑙e喅..
    绛旓細闂璇存槑:window.event 鍙兘鍦↖E涓嬭繍琛,鑰屼笉鑳藉湪Firefox涓杩愯,杩欐槸鍥犱负Firefox鐨別vent鍙兘鍦ㄤ簨浠跺彂鐢熺殑鐜板満浣跨敤銆傝В鍐虫柟娉:鍦ㄤ簨浠跺彂鐢熺殑鍑芥暟涓婂姞涓奺vent鍙傛暟,鍦ㄥ嚱鏁颁綋鍐(鍋囪褰㈠弬涓篹vt)浣跨敤 var myEvent = evt?evt:(window.event?window.event:null)绀轰緥:function doSomething(evt) {var myEvent = evt ? evt: ...
  • 本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网