使用 Google Maps API 侦听器时检索 JavaScript 的事件对象
Retrieving JavaScript's eventObject when using Google Maps API listener
在谷歌地图API V3中,如果用户控制点击地图,我想在地图上添加一个标记。为此,我在地图上添加了一个侦听器,如下所示 -
google.maps.event.addListener(map, 'click', function(e){
if (event.ctrlKey)
add_marker(e.position);
});
由侦听器传递的 e 参数包含一些数据,但主要是关于点击的位置,而我希望能够询问在 usser 点击地图期间是否按下了控制按钮。
我发现chrome有一个对象事件,这是默认的Javascript的eventObject,其中包含我需要的数据(ctrlKey),这确实适用于chrome。
但是,当我在FF中尝试相同的代码时,它找不到名为"event"的对象,并且我找不到检索它的方法。
感谢您帮助您找到也适用于IE的解决方案。
谢谢丹·
API 没有说明访问 DOM-event-object 的任何内容。
传递给回调函数的参数当前包含一个引用事件对象的属性b
,因此您可以使用e.b.ctrlKey
但由于这没有记录在案,因此不可靠,明天可能会改变。
另一种选择:
您可以在不使用 API 方法的情况下观察包含映射的div 的事件:
map.getDiv().onclick=function(e)
{
e=window.event||e;
if (e.ctrlKey)
{
//do something
}
}
相关文章:
- 如何将javascript事件从web浏览器wpf控件发送到wpf的c#代码
- 在同一个javascript事件处理程序中调用不同的函数
- Javascript事件;在新选项卡中打开”;
- 存在每个时间元素的javascript事件
- Javascript事件.锚的目标问题
- 带有参数的Javascript事件处理程序
- 如何从另一个处理程序内部取消JavaScript事件处理程序函数的执行
- firefox中的Javascript事件范围问题
- Firefox中的JavaScript事件参数
- 在动态加载的PHP表单上放置JavaScript事件
- 如何在Javascript事件上从JSNI设置GWTClass字段
- Javascript事件发射器一次处理多个事件
- 在下拉式javascript事件监听器中选择时触发事件
- 在javascript中导入xlsx文件时,如何手动强制javascript事件
- 显示触发的JavaScript事件
- 正在取消IE11中的JavaScript事件
- 页面卸载期间的JavaScript事件循环
- 存在其他参数时访问Javascript事件
- 阻止Javascript事件影响子元素
- 如何在事件处理程序中获取 javascript 事件对象