0

问题

基本上,我想知道是否可以更改后续处理程序将拾取的事件的属性。

小提琴示例:http: //jsfiddle.net/9QZ2a/(需要打开调试控制台)

我正在尝试clientX在容器的捕获阶段修改事件的属性,并将我的更改反映在目标元素的冒泡阶段触发的事件中。

返回故事

我在 iOS 上的缩放叠加层中有一个谷歌地图元素(它被缩放,因此无论您处于什么缩放级别,我的叠加层总是“看起来”相同的大小 - 因为它是需要这个的广告)。

地图在 100% 缩放下完美运行,但是一旦您放大页面,覆盖层(包含地图)就会被缩放 - 使用 CSS3 scale。这会导致事件在与地图交互时偏离位置,例如,如果您尝试捏缩放地图的中心,它实际上会放大到左上角。

我相信我可以通过在事件被地图 API 捕获之前缩放事件坐标来解决这个问题。

由于我无法更改 Google Maps API,因此我只能尝试在我的容器代码中找到解决方案。

谢谢!

编辑:我试图解决的根本问题实际上是 Google Maps API 中的一个错误 :( http://code.google.com/p/gmaps-api-issues/issues/detail?id=4046

4

1 回答 1

1

恐怕你不能这样做,事件属性是只读的:MDN 中的 MouseEvent

您是否尝试过使用 CSS3transform和设置来解决问题transform-origin

于 2012-08-10T08:01:42.223 回答