最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

单击和双击事件的冲突处理示例代码_jquery

来源:动视网 责编:小采 时间:2020-11-27 21:21:29
文档

单击和双击事件的冲突处理示例代码_jquery

单击和双击事件的冲突处理示例代码_jquery:先上代码: 代码如下: $(function () { $(div).bind(click.a, function () { //单击事件 $(body).append(click事件); }) $(div).bind(dblclick.a, function () { //双击事件 $(body).ap
推荐度:
导读单击和双击事件的冲突处理示例代码_jquery:先上代码: 代码如下: $(function () { $(div).bind(click.a, function () { //单击事件 $(body).append(click事件); }) $(div).bind(dblclick.a, function () { //双击事件 $(body).ap


先上代码:
代码如下:




$(function () {
$("div").bind("click.a", function () { //单击事件
$("body").append("

click事件

");
})
$("div").bind("dblclick.a", function () { //双击事件
$("body").append("

dblclick事件

");
})
$("div").bind("mouseover.a", function () { //鼠标经过元素的事件
$("body").append("

mouseover事件

");
})
$("div").bind("mouseout.a", function () { //鼠标移出元素的事件
$("body").append("

mouseout事件

");
})
})



jQuery命名空间


效果如图所示,我双击的同时,会先触发两个单击事件,这是怎么回事?还有,如果我不想在双击的时候触发

单击事件,而仅仅只是触发双击事件,那该怎么解决?我也有试过在双击的时候,先把单击事件解绑,

可这样一来,单击事件又不能用了。。

后来在论坛问别人,终于有了答案。那就是使用setTimeout()这个方法设置单击事件的时间间隔,这个时间间隔一般
设为300ms,这样在双击的时候,由于双击的时间间隔小于300ms,所以就不会产生click事件,而仅仅只是产生
dblclick事件。在双击事件里面,需要用clearTimeout()函数清除click事件的处理。代码如下:
代码如下:

$(function () {
var timer = null;
$("div").bind("click.a", function () { //单击事件
clearTimeout(timer);
timer = setTimeout(function () { //在单击事件中添加一个setTimeout()函数,设置单击事件触发的时间间隔
$("body").append("

click事件

");
}, 300);

})
$("div").bind("dblclick.a", function () { //双击事件
clearTimeout(timer); //在双击事件中,先清除前面click事件的时间处理
$("body").append("

dblclick事件

");
})
$("div").bind("mouseover.a", function () { //鼠标经过元素的事件
$("body").append("

mouseover事件

");
})
$("div").bind("mouseout.a", function () { //鼠标移出元素的事件
$("body").append("

mouseout事件

");
})
})


如此,这个问题就解决了!

文档

单击和双击事件的冲突处理示例代码_jquery

单击和双击事件的冲突处理示例代码_jquery:先上代码: 代码如下: $(function () { $(div).bind(click.a, function () { //单击事件 $(body).append(click事件); }) $(div).bind(dblclick.a, function () { //双击事件 $(body).ap
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top