如何将事件处理程序绑定到Google Maps V3 API默认PanControl's单击事件
How to bind event handler to Google Maps V3 API default PanControl's click event?
本页介绍Google Maps V3 API的默认控制集:http://code.google.com/apis/maps/documentation/javascript/controls.html#DefaultUI
我有兴趣接管PanControl的点击事件,并将其绑定到我的自定义函数。
例如,当用户单击"向左平移(上/右/下)"UI控件时,不仅会更改贴图的视口,还会调用函数A。
正如我所想象的,这样做的一种方法是,监听Map的点击事件并检查它的目标?
关于如何做到这一点,有什么建议/示例(特别有用)吗?
您的假设(听Map的点击事件并检查它的目标)听起来是正确的,因为没有访问控件的实现。
这对我有效(现在):
google.maps.event.addDomListener(map.getDiv(),'click',
function(e)
{
var t=e.target,
a=[null,'left','right','up','down'];
if(
t.parentNode.parentNode.hasAttribute('controlwidth')
&&
t.parentNode.childNodes.length==5
&&
t.parentNode.firstChild.tagName=='IMG'
&&
t.parentNode.firstChild.src
=="http://maps.gstatic.com/mapfiles/mapcontrols3d7.png"
)
{
for(var i=1;i<t.parentNode.childNodes.length;++i)
{
if(t.parentNode.childNodes[i]==t)
{
alert('You''ve clicked on 'n>>>'+a[i]+
''nyou may call a function now.');
}
}
}
});
http://jsfiddle.net/doktormolle/fwgMy/
但它只有在谷歌修改标记之前才有效,这可能是明天。
更好的方法是隐藏平移控件并创建自己的控件。
相关文章:
- 用嵌套函数和默认函数定义函数
- 如何使用铁流星与流星的默认路线
- 防止Alt+Shift默认操作或检测多种操作系统语言的Javascript
- CKeditor:更改对话框中的默认选择选项
- 在不阻止默认行为的情况下检测IE10中的缩放
- 如何从外部页面激活非默认引导选项卡
- 防止默认锚点行为AngularJS
- 我的shareService在angular 2中发送值工作正常,但当我渲染我的另一个组件时,会获得默认值
- jpm的默认Firefox路径没有'不起作用
- jquerydatetimepicker日期和时间应在框默认值中,而无需单击框
- 如果值为空,如何设置输入的默认值?jQuery
- 骨干模型默认值-todos.js示例中不必要的代码
- jquery日期选择器年份范围默认值
- jQuery:当屏幕大小改变时,如何更改默认图像和悬停图像
- Highcharts-如何在自定义格式化程序中获得默认的y轴标签格式化程序
- 默认情况下折叠和展开嵌套列表
- 使用AngularJS中的UI路由器将状态重定向到默认子状态
- 使用JavaScript从超链接加载时的默认下拉值
- 如何设置默认<ui视图>在另一<ui视图>
- 如何将事件处理程序绑定到Google Maps V3 API默认PanControl's单击事件