- From: Olli Pettay <Olli.Pettay@helsinki.fi>
- Date: Thu, 05 May 2011 16:28:02 +0300
- To: Ryosuke Niwa <rniwa@webkit.org>
- CC: www-dom@w3.org
On 04/16/2011 02:20 AM, Ryosuke Niwa wrote: > On Fri, Apr 15, 2011 at 2:54 AM, Olli Pettay <Olli.Pettay@helsinki.fi > <mailto:Olli.Pettay@helsinki.fi>> wrote: > > Nope, it is not the DOM 3 Events definition of click which leads to > that bug. It is the hit testing. In Firefox hit testing leads mouse > events to be dispatched to button element and click event dispatching to > work per the spec also in this case. > > > Oh, sure. I didn't mean that Firefox's behavior is due to DOM Level 3 > Events. I only referred to it to be the cause of the WebKit bug. > > On Fri, Apr 15, 2011 at 2:59 AM, Olli Pettay <Olli.Pettay@helsinki.fi > <mailto:Olli.Pettay@helsinki.fi>> wrote: > > Nope, it is not the DOM 3 Events definition of click which leads > to that > bug. It is the hit testing. In Firefox hit testing leads mouse > events to > be dispatched to button element and click event dispatching to > work per the spec also in this case. > > > I could still add that the reason for Firefox's behavior is HTML 4 spec > "Buttons created with the BUTTON element function just like buttons > created with the INPUT element, but they offer richer rendering > possibilities" > > > I see. That's a reasonable argument. In fact, IE7 / IE8 seem to have the > same behavior. > > Should D3E define hit testing? I feel like D3E is a better place to spec > this than HTML5 but I'm not even sure if we can spec precisely because > there might be some platform/browser-specific behavior that needs to be > maintained. > > Now putting hit-testing problem aside, do you think we should only fire > a click event when target nodes match? > > If there are no strong oppositions, *I'd like to propose to change the > spec to always fire click events on the lowest common ancestor* so > that websites can at least catch the event on button element in the said > situation. Still one thing. 'click' event is there to capture clicks, not mousedown, mousemove[0-*], mouseup. It is quite strange if a "click" might actually mean something closer to drag. > > IE9 seems to special case button element and doesn't fire click event > when mousedown happens inside button and mouseup happens elsewhere but > that's an edge case that might not be worth spec'ing right now. > > - Ryosuke >
Received on Thursday, 5 May 2011 13:28:34 UTC