Javascript 谷歌地图信息框位置在标记旁边,而不是标记上方
我昨天没有得到足够的关注,但在做了更多的研究之后,我想知道我如何定位谷歌标记的信息框,而不是在pin上,而是类似的,当你在标记组上悬停时,信息框显示在同一点上,因此不会触发mouseout事件,因为鼠标仍然在移动在一组标记上。我想知道我如何才能取得类似于我昨天所做的工作。 那么,为了结束这篇文章,我是否可以应用任何样式代码来显示标记上方的信息框? 非常感谢您的每一个建议。Javascript 谷歌地图信息框位置在标记旁边,而不是标记上方,javascript,google-maps,google-maps-api-3,google-maps-markers,markerclusterer,Javascript,Google Maps,Google Maps Api 3,Google Maps Markers,Markerclusterer,我昨天没有得到足够的关注,但在做了更多的研究之后,我想知道我如何定位谷歌标记的信息框,而不是在pin上,而是类似的,当你在标记组上悬停时,信息框显示在同一点上,因此不会触发mouseout事件,因为鼠标仍然在移动在一组标记上。我想知道我如何才能取得类似于我昨天所做的工作。 那么,为了结束这篇文章,我是否可以应用任何样式代码来显示标记上方的信息框? 非常感谢您的每一个建议。 谢谢,Laziale您可以使用InfoBox的alignBottom和pixelOffset属性来实现您想要的功能。我创建了
谢谢,Laziale您可以使用
InfoBox
的alignBottom
和pixelOffset
属性来实现您想要的功能。我创建了一个小提琴,虽然它看起来很糟糕,但我认为它可以让您在实现方面走上正确的轨道。工作后,您可以根据自己的喜好对其进行抛光:)
基本上,您可以指定如下选项:
var ibOptions = {
content: 'your content',
pixelOffset: new google.maps.Size(-5, -15),
alignBottom: true
};
您可以根据自己的喜好调整pixelOffset,以便内容显示在标记上,并且不会触发鼠标移出
然后执行此操作以绑定到mouseover事件(您可能已经知道):
默认情况下,它在右侧设置为140px,因此分别设置x和y的值,该框每次都会出现在那里 您可以自行安排偏移值 请尝试此代码
var infowindows = []; //make it global
var popup = new InfoBox({
// size: new google.maps.Size(420,130),
content:content_info
,pixelOffset: new google.maps.Size(10, -100) //these are the offset values to be adjusted accordingly..
,disableAutoPan: false
,closeBoxMargin: "5px 5px 2px 2px"
,boxStyle: {opacity: 0.95
}
});
infowindows.push(popup);
google.maps.event.addListener(marker, 'mouseover', function() {
close_popups();
map.panTo(mycenter1);
popup.open(map, marker);
// currentPopup = null;
});
function close_popups(){
for(var i = 0; i<infowindows.length; i++){
infowindows[i].close();
}
}
var infowindows=[]//让它全球化
var popup=新信息框({
//尺寸:新谷歌地图尺寸(420130),
内容:内容信息
,pixelOffset:new google.maps.Size(10,-100)//这些是要相应调整的偏移值。。
,disableAutoPan:false
,closeBoxMargin:“5px 5px 2px 2px”
,boxStyle:{不透明度:0.95
}
});
infowindows.push(弹出窗口);
google.maps.event.addListener(标记'mouseover',函数(){
关闭弹出窗口();
panTo地图(迈森特1);
弹出。打开(地图、标记);
//currentPopup=null;
});
函数关闭\u弹出窗口(){
对于(var i=0;ithx),我正在检查您的示例,但是当我将鼠标悬停在信息框上时,信息框将消失,请检查这个包含mouseout函数的更新示例。
var infowindows = []; //make it global
var popup = new InfoBox({
// size: new google.maps.Size(420,130),
content:content_info
,pixelOffset: new google.maps.Size(10, -100) //these are the offset values to be adjusted accordingly..
,disableAutoPan: false
,closeBoxMargin: "5px 5px 2px 2px"
,boxStyle: {opacity: 0.95
}
});
infowindows.push(popup);
google.maps.event.addListener(marker, 'mouseover', function() {
close_popups();
map.panTo(mycenter1);
popup.open(map, marker);
// currentPopup = null;
});
function close_popups(){
for(var i = 0; i<infowindows.length; i++){
infowindows[i].close();
}
}