当用户将鼠标悬停在地图上时,如何显示默认的Google地图控件?否则,我希望隐藏控件。在悬停时显示Google地图控件
0
A
回答
3
您可以使用地图的setOptions方法来隐藏或显示控件。将想要显示/隐藏的所有controlOptions作为参数传递给一个对象,并将控件的值设置为true或false。
将mouseout和mouseover的eventlisteners添加到地图并在其中设置选项。
例子:
//the controls you want to hide
var controlsOut={
mapTypeControl:false,
zoomControl:false,
panControl:false,
streetViewControl:false
};
//create a copy of controlsOut and set all values to true
var controlsIn={};
for(var c in controlsOut)
{
controlsIn[c]=true;
}
//initially hide the controls
map.setOptions(controlsOut)
//add listeners to show or hide the controls
google.maps.event.addDomListener(map.getDiv(),
'mouseover',
function(e)
{
e.cancelBubble=true;
if(!map.hover)
{
map.hover=true;
map.setOptions(controlsIn);
}
});
google.maps.event.addDomListener(document.getElementsByTagName('body')[0],
'mouseover',
function(e)
{
if(map.hover)
{
map.setOptions(controlsOut);
map.hover=false;
}
});
0
这似乎是关于关于制作地图控件悬停只有唯一的问题。上面的答案对我来说不是很有用,所以我想我会记录我自己的修改:
// dom is the enclosing DOM supplied to new google.maps.Map
// controlsIn and controlsOut are hashes of options to set
// when the mouse enters or exits.
$(dom).mouseenter(function(evt) {
if (!map.hover) {
map.hover = true
map.setOptions(controlsIn)
}
});
$('body').mouseover(function(evt) {
if (map.hover) {
if ($(evt.target).closest(dom).length == 0) {
map.hover = false
map.setOptions controlsOut
}
}
});
相关问题
- 1. 如何在鼠标悬停(悬停)上显示Google地图控件?
- 2. 当用户悬停在地址上时,如何显示弹出式Google地图?
- 3. 仅在悬停时显示图标
- 4. 创建地图,显示悬停
- 5. 悬停时显示ul:div
- 6. CSS:悬停时显示div
- 7. Google Maps API - 悬停在标记上并显示图像
- 8. Firefox:Img标题不会显示在Google地图信息窗口的悬停中
- 9. 如何在鼠标悬停在图像中时显示图像?
- 10. 显示Google地图
- 11. 悬停图像 - 在其上显示div
- 12. 在项目悬停上显示图标
- 13. 使图像显示在悬停上
- 14. 仅在悬停时显示按钮
- 15. Protovis Treemap - 在悬停时显示标签
- 16. 在鼠标悬停时显示div
- 17. 如何在悬停时显示Richfaces commandButton
- 18. 如何在图例悬停的Google饼图上显示工具提示?
- 19. 悬停工具提示显示图像
- 20. 引导悬停图像显示示例
- 21. 在链接悬停在AIR HTML控件上显示链接
- 22. Google地图控件未在magento中显示
- 23. 将鼠标悬停在另一图像上时显示图像
- 24. 鼠标悬停在图像上时可点击图标显示
- 25. 悬停显示图片上的图片
- 26. 显示在鼠标悬停
- 27. 将地图信息框悬停在li上不显示
- 28. 在悬停链接或文本上显示谷歌地图
- 29. 地图:标记位置突出显示在wordpress的悬停div
- 30. JQVMap悬停显示
你能看看crossborders.tv/client/frisbie。请滚动到底部的联系部分。我无法让你的代码工作。 – user1215071 2012-02-27 16:38:59
把上面的代码放在这行后面:'map.mapTypes.set(frisbieMapID,mapType); ',为我工作。 – 2012-02-27 17:08:55
谢谢!得到它的工作! – user1215071 2012-02-27 17:33:21