最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

單擊和雙擊事件的沖突處理示例代碼

 更新時間:2014年04月03日 16:42:15   作者:  
這篇文章主要介紹了單擊和雙擊事件的沖突處理方法,需要的朋友可以參考下
先上代碼:
復(fù)制代碼 代碼如下:

<head>
<title></title>
<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script type="text/javascript" language="javascript">
$(function () {
$("div").bind("click.a", function () { //單擊事件
$("body").append("<p>click事件</p>");
})
$("div").bind("dblclick.a", function () { //雙擊事件
$("body").append("<p>dblclick事件</p>");
})
$("div").bind("mouseover.a", function () { //鼠標(biāo)經(jīng)過元素的事件
$("body").append("<p>mouseover事件</p>");
})
$("div").bind("mouseout.a", function () { //鼠標(biāo)移出元素的事件
$("body").append("<p>mouseout事件</p>");
})
})
</script>
</head>
<body>
<div>jQuery命名空間</div>
</body>

效果如圖所示,我雙擊的同時,會先觸發(fā)兩個單擊事件,這是怎么回事?還有,如果我不想在雙擊的時候觸發(fā)

單擊事件,而僅僅只是觸發(fā)雙擊事件,那該怎么解決?我也有試過在雙擊的時候,先把單擊事件解綁,

可這樣一來,單擊事件又不能用了。。。

 

后來在論壇問別人,終于有了答案。那就是使用setTimeout()這個方法設(shè)置單擊事件的時間間隔,這個時間間隔一般
設(shè)為300ms,這樣在雙擊的時候,由于雙擊的時間間隔小于300ms,所以就不會產(chǎn)生click事件,而僅僅只是產(chǎn)生
dblclick事件。在雙擊事件里面,需要用clearTimeout()函數(shù)清除click事件的處理。代碼如下:
復(fù)制代碼 代碼如下:

<script type="text/javascript" language="javascript">
$(function () {
var timer = null;
$("div").bind("click.a", function () { //單擊事件
clearTimeout(timer);
timer = setTimeout(function () { //在單擊事件中添加一個setTimeout()函數(shù),設(shè)置單擊事件觸發(fā)的時間間隔
$("body").append("<p>click事件</p>");
}, 300);

})
$("div").bind("dblclick.a", function () { //雙擊事件
clearTimeout(timer); //在雙擊事件中,先清除前面click事件的時間處理
$("body").append("<p>dblclick事件</p>");
})
$("div").bind("mouseover.a", function () { //鼠標(biāo)經(jīng)過元素的事件
$("body").append("<p>mouseover事件</p>");
})
$("div").bind("mouseout.a", function () { //鼠標(biāo)移出元素的事件
$("body").append("<p>mouseout事件</p>");
})
})
</script>

如此,這個問題就解決了!

相關(guān)文章

最新評論

会泽县| 启东市| 永善县| 界首市| 扎囊县| 措勤县| 西平县| 冕宁县| 金华市| 广饶县| 和政县| 阳谷县| 吴堡县| 南乐县| 罗城| 岱山县| 专栏| 武强县| 襄垣县| 苏州市| 河北省| 揭东县| 郁南县| 浦城县| 庆阳市| 天等县| 历史| 北碚区| 外汇| 嵊州市| 进贤县| 信宜市| 库车县| 讷河市| 容城县| 多伦县| 西丰县| 肃北| 泽库县| 孟州市| 曲沃县|