From: Doug M. <do...@cr...> - 2001-01-31 15:41:22
|
I've been looking into events problems (ignoring bubbling) and found the following issues. Some of these have been reported before. Oh, I've been using a modified version of the mouseevents example html file which I'll attach to this mail. It's quite useful for debugging, if people can = think of further test cases then they should add them :-) Win32 IE is my yard stick. IE behave's mostly like I'd expect, so if = other browsers don't I reckon it's a bug. IE: If you enable dragging, then you cannot select form text, instead you = drag the window. Are you using the IE text selection fix? Just wondering... NS4: If you enable dragevents, click and dblclick events are not fired. Events are not picked up on the image (but they are using dynimage, so what's the difference). I came across that too, here was my problem/fix. Problem: In NS, one could not click on the buttons at the far right of = my toolbar.. (www.creative-workshop.com/demo/cwconcept.htm) Solution: in the mousedown event of the buttons I disable dragging of = the toolbar and on mouseup I 'click' or perform tho code I would have put in onclick = and re-enabled to drag events. i.e. db1.onmousedown=3Dfunction(e){ e.setBubble(false); DragEvent.disableDragEvents(ToolBar); } db1.onmouseup=3Dfunction(e){ e.setBubble(false); dockClick(e); DragEvent.enableDragEvents(ToolBar); } Unfortunatly you then have a problem with mousedown happening, but then = the mouse moving off the object before comming up and the the mouseup = doesn't get fired of course.. My solution for that was simple tho.. :-) var d1=3Dnew EventListener(DynAPI.document); d1.onmousemove=3Dfunction(e){ e.setBubble(true); ....... DragEvent.enableDragEvents(ToolBar); } DynAPI.document.addEventListener(d1); NS6(using nicolajazz patch): Events are still being fired twice. When dragging is enabled you cannot select a form input to type into. NS6(using my patch): Double click events are not being fired. I added something to events.js to allow forms to be selected when = dragging but the problem is probably with dragevent.js not events.js. Some food for thought, better get back to the real work now... |