展会信息港展会大全

JS实现鼠标单击与双击事件共存
来源:互联网   发布日期:2016-01-27 15:37:43   浏览:1136次  

导读:本篇文章主要是对JS实现鼠标单击与双击事件共存的简单实例进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助一直都认为在Web开发中,双击事件都是少至又少地使用,直到最近项目需要,要在一个按钮上绑定 ...

本篇文章主要是对JS实现鼠标单击与双击事件共存的简单实例进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助

一直都认为在Web开发中,双击事件都是少至又少地使用,直到最近项目需要,要在一个按钮上绑定单击与双击两件事件。开始也觉得不就是给按钮绑下两个事件而已罢了只是后来才明白,是我想得太简单,在双击事件触发的同时也会触发单击的~囧

通过一番研究后,终于利用JS中 setTimeout 延时执行方法的办法,将单击延迟300毫秒执行才解决了,代码如下:

代码如下:

<!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>

<title></title>

<mce:script src="jquery-1.6.min.js" mce_src="jquery-1.6.min.js" type="text/javascript"></mce:script>

<mce:script type="text/javascript">

<!--

$(function () {

var num = 0;

var timeFunName = null;

$("button").bind("click", function () {

// 取消上次延时未执行的方法

clearTimeout(timeFunName);

// 延时300毫秒执行单击

timeFunName = setTimeout(function () {

num++;

$("textarea").val($("textarea").val() + "第" + num + "次事件,事件名:单击/n");

}, 300);}).bind("dblclick", function () {

// 取消上次延时未执行的方法

clearTimeout(timeFunName);

num++;

$("textarea").val($("textarea").val() + "第" + num + "次事件,事件名:双击/n");

});

});

// --></mce:script>

</head>

<body>

<textarea rows="20" cols="50"></textarea><button type="button">提交</button></body></html>

赞助本站

人工智能实验室

相关热词: 鼠标 单击 双击 事件 JS

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港