Firefox下和IE下的单击和双击事件差异

Posted on April 02, 2008 by Fdream

如果在一个DOM对象上同时绑定单击(click)和双击(dblclick)事件,当在这个DOM对象上发生双击事件时,在IE下和在Firefox下将出现不一样的现象:
在IE下,第一次点击(click)会触发一次单击(click)事件,第二次点击(连续的)将会触发双击(dblclick)事件,并不触发单击事件(click);
在FF下,第一次点击(click)会触发一次单击(click)事件,第二次点击(连续的)也会触发双击(dblclick)事件,与在IE下不同的是,这次还是会触发单击(click)事件。

当需要在DOM上同时绑定单击和双击事件时,只有自己写代码实现了:

第一次点击记录下点击的时间,并设置单击事件的Timeout(250ms比较合适),第二次点击时判断此时点击的时间与上次点击的时间间隔,如果小于指定的事件间隔(比如250ms),则判断为双击事件,并clear已设置的Timeout(避免触发单击事件)。

记录点击时间需要注意的一点,就是在IE下,你必须同时绑定单击和双击事件来记录点击时间,而在Firefox下你只需要绑定单击事件来记录每次点击时间,原因写在文章的开头了。

分享 |
Categories:
Ajax Web
Tags:
, ,
Comments:
3 Comments
Views:
7,295 Views

Related Posts

3 Responses to <Firefox下和IE下的单击和双击事件差异>

  1. HotHeart says:

    IE下的处理貌似跟WinForm下有些像~~

  2. 耳闻味儿 says:

    [cry]

  3. 耳闻味儿 says:

    [cry]

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>