.dblclick()
返回: jQuery
.dblclick( handler )
描述:把某个事件处理函数绑定到JavaScript事件“dblclick”上,或者在某个元素上触发该事件。
加入于: 1.0
.dblclick( handler )加入于: 1.4.3
.dblclick( [eventData ], handler )- eventData类型:Anything一个对象,它包含了要传递给事件处理函数的数据。
- handler一个函数,在每次事件被触发时执行它。
加入于: 1.0
.dblclick()该签名不接受任何参数。
该方法在前两种变体中是.on( "dblclick", handler )
的简写,在第三种变体中是.trigger( "dblclick" )
的简写。当一个元素被双击时,该dblclick
事件被发送到该元素上。任何HTML元素都能接上到这个事件。举个例子,设想下面的HTML:
<div id="target"> Double-click here </div> <div id="other"> Trigger the handler </div>
该事件处理函数可以绑定到任何<div>
上:
$( "#target" ).dblclick(function() { alert( "Handler for .dblclick() called." ); });
现在在元素上双击,会跳出提醒:
Handler for .dblclick() called.要想人为触发该事件,请不带参数地调用.dblclick()
。
$( "#other" ).click(function() { $( "#target" ).dblclick(); });
在代码执行之后,在“Trigger the handler”上的单击也将跳出提醒消息。
dblclick
事件只在一系列事件精确发生之后才会被触发:
- 当指针在一个元素内部时,鼠标按钮被按下。
- 当鼠标按钮被释放时,指针还在元素内部。
- 在一个取决于系统的时段时,鼠标按钮被按次按下,与此同时指针还在元素内部。
- 鼠标按钮被释放,与此同时指针还在元素内部。
不建议把处理函数同时绑定在同一个元素的click
事件和dblclick
事件上。事件的触发顺序会因浏览器而不同,有些浏览器在dblclick
事件之前会接收到两次单击,而另一些浏览器只接收到一次单击。“双击敏感性”(两次单击会被侦测为一次双击的最大间隔时长)也会因操作系统而异、因浏览器而异,而且通常是可用户配置的。
其它说明
- 因为
.dblclick()
方法是.on("dblclick", handler)
的简写,所以可以使用.off("dblclick");
来分离它。
示例
把一个“Hello World!”提醒框绑定到网页上每个段落文本的双击事件上:
$( "p" ).dblclick(function() { alert( "Hello World!" ); });
双击以切换背景颜色。
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>dblclick demo</title> <style> div { background: blue; color: white; height: 100px; width: 150px; } div.dbl { background: yellow; color: black; } </style> <script src="https://code.jquery.com/jquery-1.10.2.js"></script> </head> <body> <div></div> <span>Double click the block</span> <script> var divdbl = $( "div:first" ); divdbl.dblclick(function() { divdbl.toggleClass( "dbl" ); }); </script> </body> </html>
演示结果