Fixed
Status Update
Comments
ch...@wetzelrice.com <ch...@wetzelrice.com> #2
Can you track these events by assigning event listeners on the map container? For
example:
google.maps.event.addDomListener('map_canvas', 'mousemove', function(e) {
// code here
});
Granted, it'll take a bit more code on your end to determine whether the mouse is
within map container boundaries, but this seems like a feature you can add yourself.
example:
google.maps.event.addDomListener('map_canvas', 'mousemove', function(e) {
// code here
});
Granted, it'll take a bit more code on your end to determine whether the mouse is
within map container boundaries, but this seems like a feature you can add yourself.
cs...@google.com <cs...@google.com>
zw...@google.com <zw...@google.com>
en...@google.com <en...@google.com>
ch...@wetzelrice.com <ch...@wetzelrice.com> #3
I have tried but my event handlers conflict with yours. The pixel arithmetic is
messy. It requires an additional OverlayView for the "fromPixelToLatLon" conversion.
You already have the same information for "click" & "dblclick" event handlers.
The browsers measure pixel offsets differently. Internet Explorer measures pixel
offsets relative to the parent DIV. Firefox measures pixel offsets relative to the
DIV containing the corresponding tile. An extra DIV is required in order to simplify
the Firefox arithmetic. Unfortunately, it covers your click layer which causes it to
fail.
messy. It requires an additional OverlayView for the "fromPixelToLatLon" conversion.
You already have the same information for "click" & "dblclick" event handlers.
The browsers measure pixel offsets differently. Internet Explorer measures pixel
offsets relative to the parent DIV. Firefox measures pixel offsets relative to the
DIV containing the corresponding tile. An extra DIV is required in order to simplify
the Firefox arithmetic. Unfortunately, it covers your click layer which causes it to
fail.
en...@google.com <en...@google.com> #4
OK, we'll consider it.
Thanks!
Thanks!
en...@google.com <en...@google.com> #5
The pixel arithmetic is not trivial. Browser differences must be accommodated.
Look at:
http://www.polyarc.us/polycluster/event.html
It is a lot of work just to track mouse coordinates. It is incompatable with your
event listeners.
Look at:
It is a lot of work just to track mouse coordinates. It is incompatable with your
event listeners.
Description
Attached is a working example of the issue. There are two event handlers attached at the body level and there is a button in the middle of the map. One of the event handlers has filtering and one without filtering. On desktop's both event handlers fire when the button is clicked but on tablets the one with a selector key does not fire.
I think i have tracked it down to line 4467 of jQuery.2.1.4
I believe the issue is because google maps generates a click event handler from a touch event and when it does it sets the button clicked to 1 and not 0. A 1 indicates a middle button click and not a left button click. This causes jQuery to think the event should not be bubbled(or something like it) and therefore ignores the event for the handler.
The line that generates the click handler is in common.js of google maps.
c.initMouseEvent(b, !0, !0, window, 1, d.pageX, d.pageY, d.clientX, d.clientY, !1, !1, !1, !1, 1, null);