如何通过它引用谷歌地图标记's id并激活它's使用javascript单击事件
How to reference a google map marker by it's id and activate it's click event using javascript?
我在这里处理谷歌地图和javascript。我在谷歌地图上有一个现有的标记,我可以点击它,它会显示一个div。如果我再次点击它,div就会消失。我给了这个标记一个特定的、唯一的id。
地图上还有一个多边形。我希望当用户点击多边形时,点击事件会激活标记,我将通过标记的id引用该标记。
这可能吗?如果是,那么假设标记的id是U123。我该怎么做?
以下是我用来向多边形单击添加事件的代码:google.maps.event.addListener(assetPolgons[polgon_count],'click',function(event){new google.maps.avent.trigger('U123','click');});
U123是标记id的名称。以上内容无效。
var marker = new google.maps.Marker(markerOptions);
marker.setValues({id: 1}); // v3
marker.metadata = {type: "point", id: 1}; //v2 or v3
我想最好的方法是将标记存储在全局var中,然后进行
$(".something").click(function(){
new google.maps.event.trigger( marker, 'click' );
// Here marker is a global var so accessible everywhere.
});
谷歌中的两秒钟发现如何在谷歌地图V3上触发标记的onclick事件?
功能中唯一的区别是:
google.maps.event.trigger(markers[i], 'click');
我能看到的是你的新,试着删除它
我构建了一个函数,该函数在存储每个标记的assetMarkers数组中循环。这项工作:
function ClickMarker(u) {
for (i=0;i<assetMarkers.length;i++) {
if (assetMarkers[i].id == u) {
google.maps.event.trigger(assetMarkers[i], 'click');
i = assetMarkers.length;
}
}
}
在上面的函数中,变量u是数组assetMarkets(存储映射标记的数组)中标记的id。当我创建标记时,我使用marker.setValues({id:'U123'})设置id;其中U123是标记的id。
我必须循环浏览assetMarkers数组才能找到我要找的那个。
我希望谷歌地图中会有相当于document.getElementById(u)的东西,这样我就不必在数组中循环了。谷歌API的伙计们,如果我们程序员能做这样的事情,那就太好了:
google.maps.event.trigger(google.maps.getElementById(u), 'click');
感谢大家的投入!这很有帮助,因为我是谷歌地图的新手。
- 提示使用服务器端事件处理程序激活JavaScript
- (取消)使用单独的复选框激活复选框列表
- 如何点击文本区域以使用javascript激活它们
- 如何在使用jquery向数据库发送数据时取消激活的按钮
- 如何使用jQuery激活按钮
- 我必须点击两次才能使用jQuery激活函数
- 使用Selenium WebDriver单击下拉菜单不会激活Javascript来添加或删除页面中的项目
- 是否可以使用javascript激活windows应用程序窗口
- 如何使用on()/of()激活每个事件一次
- 使用javascript点击时激活
- 如何通过它引用谷歌地图标记's id并激活它's使用javascript单击事件
- 如何使用日期对象在特定时间激活音频文件
- 使用javascript和jqueryui点击激活css
- Javascript-从函数中使用clearInterval后重新激活setInterval
- 如何使用Xpages onchange事件激活按钮
- 使用jQuery跟踪/激活点击的文章
- 使用动态构建的 jQuery 承诺链按顺序激活特定元素
- 如何使用按钮激活键盘
- 如何触发 HTML 选择单击事件(使用选项激活选择下拉列表)
- 使用触摸激活事件