我已经使用“分享和嵌入”地图选项将地图放在我正在开发的网站上(来自“新”Google地图底部的齿轮:
<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2426.5340551802665!2d-1.3732330000000013!3d52.541864000000004!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x48775aa3a9b0d003%3A0x733a43420fa646be!2sAT+Home+Furniture!5e0!3m2!1sen!2s!4v1392282549357" width="600" height="450" frameborder="0" style="border:0"></iframe>
在桌面上,它运行正常,您可以点击“在Google地图上查看”,它可以按照您的预期运行,并在Google地图上显示商店位置。但是,当您在移动设备(Nexus 5,iPad 3,Nexus 7)上单击此链接时,它只会将Google地图应用程序打开到常规区域,然后人们必须手动键入搜索才能找到商店(屏幕截图)出现的内容如下。)
这肯定不是Google地图的错误吗?我做错了什么?其他人是否也以同样的方式体验过这种情况?
目前网站的链接是:AT Home Furniture
2014-02-25编辑 - 如果没有办法解决这个问题(谷歌肯定忽略了这里的东西?!),那么是否有可能复制这个(如果用户定制的地图)他们已经登录了API?如果您查看该网站,您应该会看到这一点,但它是嵌入iFrame时Google地图的标准功能。
2014-02-26编辑 - 如果我使用Google Maps API,我该如何设置在桌面上工作的“完整地图”(在谷歌地图中打开)的链接和移动?
答案 0 :(得分:2)
您可以使用自定义地图API信息窗口显示共享地图链接等。
请参阅此处的示例:http://jsfiddle.net/PEHba/7/
您可以添加任意数量的标记。只需将第8-13行放入循环中即可。单击标记时要显示的所有信息都必须包含在标记内。点击后,我们使用this.xyz来访问它们。
google.maps.event.addDomListener(window, 'load', function() {
var map = new google.maps.Map(document.getElementById("map-canvas"),
{
center: new google.maps.LatLng(52.54215, -1.37335),
zoom: 14
});
//add a marker
var marker = new google.maps.Marker({
position: new google.maps.LatLng(52.542151, -1.373351),
map: map,
title:"Hello World!",
View_on_Google_Maps_link: 'https://www.google.com/maps/place/AT+Home+Furniture/@52.541864,-1.373233,16z/data=!4m2!3m1!1s0x0:0x733a43420fa646be?hl=en-GB'
});
//attach a click event to the marker to display the info window.
google.maps.event.addListener(marker, 'click', function() {
//create a info window to show when a maker is clicked
var infowindow = new google.maps.InfoWindow({
content: '<div>Share link: '+ this.View_on_Google_Maps_link +'.</div>'
});
infowindow.open(map,this);
});
});