更新
在谷歌地图上显示<div> 很简单:
示例css:
div.info {
position: absolute;
z-index: 999;
width: 200px;
height: 100px;
display: none;
background-color: #fff;
border: 3px solid #ebebeb;
padding: 10px;
}
标记中某处的info 类<div>:
<div id="myinfo" class="info"><p>I am a div on top of a google map .. </p></div>
对 div 有一个简短的引用总是很高兴:
var info = document.getElementById('myinfo');
更棘手的部分,显示<div>,如何以及何时 - 在这里我只是为地图分配一个点击处理程序(在它创建之后)并在地图内的鼠标位置 XY 处显示信息<div>:
google.maps.event.addListener(map, 'click', function(args) {
var x=args.pixel.x; //we clicked here
var y=args.pixel.y;
info.style.left=x+'px';
info.style.top=y+'px';
info.style.display='block';
});
您的收获是,每次点击时,<div> 信息都会在地图上跟随您。
- 您将需要更多样式以符合您的需要,例如“看起来像一个信息框”,但这应该很容易找到,我不是图书管理员 :)
- 也许稍后会用一些东西来关闭信息,但你一开始并不想要:)
原答案
你不能!在当前的 v3.13 InfoWindow options 中没有办法做到这一点。
解决方法是禁用包含 X 的图像:
<style>
img[src="http://maps.gstatic.com/mapfiles/api-3/images/mapcnt3.png"] {
display: none;
}
</style>
但这绝不可取!
src="http://maps.gstatic.com/mapfiles/api-3/images/mapcnt3.png 正是信息窗口所指的今天。明天,或者一个月,或者一年,这个图像参考肯定会改变。如您所见,如果您搜索类似的“解决方案”,随着时间的推移而制定 - 例如this。今天都坏掉了,比如努力是没有意义的。
我认为谷歌“拒绝”遵循隐藏关闭按钮的请求是非常好的逻辑。如果您不需要关闭按钮,那么您还需要 InfoWindow 做什么?当您最好在地图上显示<div> 时。