Google Maps v3 infoWindow addDomListener for HTML Button
Google Maps v3 infoWindow addDomListener for HTML Button
我有一个简单的谷歌地图示例JS文件:
/*Standard Setup Google Map*/
var latlng = new google.maps.LatLng(-25.363882,131.044922);
var myOptions = {
zoom: 15,
center: latlng,
panControl: false,
mapTypeControl: true,
scaleControl: true,
mapTypeControlOptions: {
style: google.maps.MapTypeControlStyle.DROPDOWN_MENU
},
zoomControl: true,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.SMALL
},
mapTypeId: google.maps.MapTypeId.ROADMAP
};
// add Map
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
// add Marker
var marker1 = new google.maps.Marker({
map: map,
position: new google.maps.LatLng(-25.363882,131.044922)
});
// add Info Window
var infoWindow = new google.maps.InfoWindow();
现在我想在单击我的 html 模板中的按钮时打开信息框:
文件:
<body onload="initialize()">
...
<div id="map_canvas"></div>
...
<button id="test">Click</button>
...
</body>
将这些行添加到我的 JS 文件中:
var onMarkerHTMLClick = function() {
var marker = this;
var latLng = marker.getPosition();
var content = '<div style="text-align: center; font-size:14px;"><center><b>Company GmbH</b></center><div>Broadway Str.5</div><div>45132 Canvas</div></div>';
map.panTo(marker.getPosition());
map.setZoom(15);
infoWindow.setContent(content);
infoWindow.open(map, marker);
};
google.maps.event.addListener(map, 'click', function() {
infoWindow.close();
});
google.maps.event.addDomListener(document.getElementById("test"),'click', onMarkerHTMLClick);
错误:marker.getPosition 不是函数为什么这不应该奏效?如果我对标记本身的单击功能执行相同的操作,则窗口打开没有问题。
您需要触发打开信息窗口的事件。可能最简单的方法是将您的标记存储在全局数组中,或者如果您没有很多标记,只需按 ID 选择它们。
例
var myButton = document.getElementById('THE_ID');
google.maps.event.addDomListener(myButton, 'click', openInfoWindow);
openInfoWindow只是可以触发事件的回调函数。
相关文章:
- Is onfling available for html, html5
- 如何在angularJS中运行for循环而不使用html标记
- JS for循环来设置HTML对象参数
- 如何从 HTML 或 Javascript for Windows Phone 访问图像文件
- HTML Javascript getElementById for <img> image returns
- 为什么我的“for”循环只获取 html 中的最后一项
- 使用javascript for html显示特定时区的日期和时间
- RegExp for html-tag entrie
- Javascript for loop architecture for Html Rendering
- jQuery for HTML to PHP - Function Error
- Google Maps v3 infoWindow addDomListener for HTML Button
- javascript for html scrollbar that works in firefox
- javascript for html图像标记中的文本区域验证
- 在javascript中使用for html模板
- 在javascript for html文件中触发具有可接受延迟的事件
- Intellij - Use for html,js
- Grid For HTML应用程序
- What is the 'jQuery' for Html 5?
- 如何使用clickonce for html按钮
- 在javascript for html表单中验证时间和日期