JS实现鼠标单击与双击事件共存


Posted in Javascript onMarch 08, 2014

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

通过一番研究后,终于利用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>
Javascript 相关文章推荐
flash javascript之间的通讯方法小结
Dec 20 Javascript
js实现的跟随鼠标移动的时钟效果(中英文日期显示)
Jan 17 Javascript
什么是DOM(Document Object Model)文档对象模型
Mar 05 Javascript
拥抱模块化的JavaScript
Mar 07 Javascript
浅谈javascript属性onresize
Apr 20 Javascript
Bootstrap安装环境配置教程分享
May 27 Javascript
vue.js 1.x与2.0中js实时监听input值的变化
Mar 15 Javascript
javascript 开发之百度地图使用到的js函数整理
May 19 Javascript
使用JS实现气泡跟随鼠标移动的动画效果
Sep 16 Javascript
layui table 获取分页 limit的方法
Sep 20 Javascript
Vue如何实现监听组件原生事件
Jul 03 Javascript
vue+element ui实现锚点定位
Jun 29 Vue.js
js触发onchange事件的方法说明
Mar 08 #Javascript
关于onchange事件在IE和FF下的表现及解决方法
Mar 08 #Javascript
javascript中的事件代理初探
Mar 08 #Javascript
jquery实现弹出div,始终显示在屏幕正中间的简单实例
Mar 08 #Javascript
Extjs表单常见验证小结
Mar 07 #Javascript
extJS中常用的4种Ajax异步提交方式
Mar 07 #Javascript
禁用JavaScript控制台调试的方法
Mar 07 #Javascript
You might like
PHP 实例化类的一点摘记
2008/03/23 PHP
php计算两个日期时间差(返回年、月、日)
2014/06/19 PHP
ThinkPHP之foreach标签使用概述
2014/06/30 PHP
Zend Framework教程之Zend_Db_Table_Row用法实例分析
2016/03/21 PHP
php版阿里云OSS图片上传类详解
2016/12/01 PHP
PHP中empty,isset,is_null用法和区别
2017/02/19 PHP
PHP基于XMLWriter操作xml的方法分析
2017/07/17 PHP
二级域名或跨域共享Cookies的实现方法
2008/08/07 Javascript
javascript 继承实现方法
2009/08/26 Javascript
jQeury淡入淡出需要注意的问题
2010/09/08 Javascript
在vs2010中调试javascript代码方法
2011/02/11 Javascript
JavaScript创建一个object对象并操作对象属性的用法
2015/03/23 Javascript
jQuery超赞的评分插件(8款)
2015/08/20 Javascript
JS实现灵巧的下拉导航效果代码
2015/08/25 Javascript
详解Wondows下Node.js使用MongoDB的环境配置
2016/03/01 Javascript
js 求时间差的实现代码
2016/04/26 Javascript
js简单实现调整网页字体大小的方法
2016/07/23 Javascript
D3.js实现饼状图的方法详解
2016/09/21 Javascript
js遍历获取表格内数据的方法(必看)
2017/04/06 Javascript
VUEJS 2.0 子组件访问/调用父组件的实例
2018/02/10 Javascript
webpack打包node.js后端项目的方法
2018/03/10 Javascript
JS使用setInterval实现的简单计时器功能示例
2018/04/19 Javascript
vue.js绑定事件监听器示例【基于v-on事件绑定】
2018/07/07 Javascript
vue刷新页面时去闪烁提升用户体验效果的实现方法
2018/12/10 Javascript
vue学习笔记五:在vue项目里面使用引入公共方法详解
2019/04/04 Javascript
Nodejs libuv运行原理详解
2019/08/21 NodeJs
Python中getattr函数和hasattr函数作用详解
2016/06/14 Python
Python IDE Pycharm中的快捷键列表用法
2019/08/08 Python
Python json读写方式和字典相互转化
2020/04/18 Python
canvas实现圆绘制的示例代码
2019/09/11 HTML / CSS
社区学雷锋活动策划方案
2014/01/30 职场文书
学习十八大的心得体会
2014/09/01 职场文书
党员违纪检讨书怎么写
2014/11/01 职场文书
人事局接收函
2015/01/31 职场文书
2016猴年春节问候语
2015/11/11 职场文书
Android学习之BottomSheetDialog组件的使用
2022/06/21 Java/Android