• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 543
  • Last Modified:

Ignore onMouseDoubleClick to allow for rapid onMouseDown event captures (IE only)

I have an online javascript calculator that uses html/CSS for the GUI buttons.  These calculator buttons are using onmousedown to capture the user clicking on the GUI.  This works great, but in IE, if the user clicks very quickly (for example types the number "1.333") then IE interprets the clicking of the "3s" as a doubleclick event and I do not get the correct number of onmousedown events.  This is extremely annoying and only in IE.  (FF, Safari, and Opera all process the event with the correct number of onmousedown events.)

I've done some research into what events are being fired for IE.  If you do two quick clicks you fire the following sequence of events:

mousedown fired... Then mouseup fired... Then click fired... Then mousedown fired... Then mouseup fired... Then click fired... Then dblclick fired...

So it appears as if the dblclick event trumps any mouedown events.

What approach should I take to this problem?  Again, this seems to be an IE only problem but I need this solution to work correctly in conjunction with all the other browsers that work fine.

0
proee
Asked:
proee
1 Solution
 
robacarpCommented:
I may be oversimplifying the problem, but you could setup your dblclick handler to fire your click handler twice:
[example psuedo javascript]
 
function clickFunc(){
   //do stuff 
}
 
function dblClickFunc(){
   if (browser.id != 'Internet Explorer') return;
   clickFunc();
   clickFunc();
}
 
button.onclick = clickFunc;
button.ondblclick = dblClickFunc;
 
/* or something like that.... its an example, not working code */

Open in new window

0
 
proeeAuthor Commented:
I've thought about this approach.  Wondering if there might be less of a "hack" than this.  I have a lot of buttons on the calculator gui so I'd have to add a ton of onmousedblclick handlers all over.  I was hoping to handle it with an event capture somehow.  Thanks for the suggestion, I'll try it if I don't hear of a better approach.
0

Featured Post

The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now