谷歌似乎改变了他们的iFrame的工作方式.现在左上方有一个信息框,试图显示地名.问题是,在爱尔兰,通常不可能使用商家的名称来确定地图,而且通常你需要使用街道名称等等,这使得这个箱子功能无用,因为街道的名称就在那里地图,以及地图旁边的页面!
我怎么能摆脱这个东西?在这个例子中,该业务与爱尔兰教练位于同一建筑物内.地图坚持认为,通过在地址中加入,这位律师出于某种原因希望告知潜在客户爱尔兰教练的位置!

我已经尝试了iwloc但它什么也没做,我不能通过CSS和jQuery实现它,因为它在另一个域上!
有任何想法吗?
raw*_*dlz 24
这在2017年2月左右停止工作.他们必须更新他们的API.:(
你就是这样做的!
工作版
<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2381.7399040776495!2d-6.261147484122739!3d53.34791197997939!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!3m2!1sen!2sus!4v1462581622087" width="600" height="450" frameborder="0" style="border:0" allowfullscreen></iframe>
Run Code Online (Sandbox Code Playgroud)
我注意到另一个网站嵌入的模式只有"查看更大的地图"文本而没有额外的东西.只需删除几个字符.
全部嵌入你
<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2381.7399040776495!2d-6.261147484122739!3d53.34791197997939!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x48670e84fbdd6bd3%3A0x998692b4f1b691e1!2sUlster+Bank+Chambers%2C+O'Connell+Street+Lower%2C+Dublin+1%2C+Ireland!5e0!3m2!1sen!2sus!4v1462581622087" width="600" height="450" frameborder="0" style="border:0" allowfullscreen></iframe>
Run Code Online (Sandbox Code Playgroud)
这是被删除的部分
1m2!1s0x48670e84fbdd6bd3%3A0x998692b4f1b691e1!2sUlster+Bank+Chambers%2C+O'Connell+Street+Lower%2C+Dublin+1%2C+Ireland!5e0!
Run Code Online (Sandbox Code Playgroud)
我也尝试过其他地址.
zet*_*eta 22
从1822年1月22日起,当您使用坐标而不是商家名称时,它会起作用
得到的html是这样的:
<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3333.967410377096!2d-111.89998968453055!3d33.31966746342457!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x0%3A0x0!2zMzPCsDE5JzEwLjgiTiAxMTHCsDUzJzUyLjEiVw!5e0!3m2!1sen!2sus!4v1516690469899" width="600" height="450" frameborder="0" style="border:0" allowfullscreen></iframe>Run Code Online (Sandbox Code Playgroud)
在这里得到了两个答案,一个摆脱了信息框,一个可能回答了在信息框中的正确位置。希望其中之一能有所帮助。
CAVEAT:这里的方法可能被认为是“黑客”,如果Google更改其底层嵌入功能,则可能会更改。
我最终在这里寻找类似的答案,并且根据其他人的发言,我提出了这个答案。答案与其他答案相似,但希望能解释一些有关嵌入网址以及如何使用经纬度,经度和缩放生成嵌入网址的信息(您可能会从CMS中的位置插件获得一些信息)。
使用这篇文章作为搜索的基础,我发现了几个不同的文章,概述了嵌入参数的细目分类,这些内容本身很有趣:- 解码Google Maps嵌入参数,这导致了http://blog.themillhousegroup .com / 2016/08 / deep-diving-into-google-pb-embedded-map.html
我从这些文章中提取的内容(此处不再赘述)是“ pb”参数的细分。“ pb”是专有(?)格式,“ m”是矩阵引用。这里显示的是从Google Maps嵌入共享生成的嵌入代码的示例。
<iframe src="https://www.google.com/maps/embed?pb=
!1m18
!1m12
!1m3
!1d2256.8774176856136
!2d145.01353351606252
!3d-37.79291244062522
!2m3
!1f0
!2f0
!3f0
!3m2
!1i1024
!2i768
!4f13.1
!3m3
!1m2
!1s0x0%3A0x0
!2zLTM3Ljc5MjkxNjcgMTQ1LjAxNTcyMjI
!5e0
!3m2
!1sen
!2suk
!4v1532346966021
" width="600" height="450" frameborder="0" style="border:0" allowfullscreen></iframe>
Run Code Online (Sandbox Code Playgroud)
通过玩转,我发现整个“ pb”参数可以简化为
<iframe src="https://www.google.com/maps/embed?pb=
!1m7
!1m2
!1m1
!1d2256.8774176856136
!3m3
!1m2
!1s0
!2zLTM3Ljc5MjkxNjcgMTQ1LjAxNTcyMjI
" width="450" height="450" frameborder="0" style="border:0" allowfullscreen></iframe>
Run Code Online (Sandbox Code Playgroud)
注意:“ m”后的数字已减少,表示“矩阵”中的项目较少
上面的嵌入用于lat = -37.7929167,long = 145.0157222和zoom = 17的位置
正如另一个答案所暗示的那样,如果您仅使用纬度和经度(使用此嵌入api,而不使用嵌入位置api),则不会出现信息框,但是我需要知道如何直接获取嵌入url首先通过google从共享生成URL。
在“ pb”细分中,需要注意几个部分
比例尺可以从我在https://gis.stackexchange.com/questions/7430/what-ratio-scales-do-google-maps-zoom-levels-correspond-to和https://此处找到的算法中得出//www.esri.com/arcgis-blog/products/product/mapping/how-can-you-tell-what-map-scales-are-shown-for-online-maps/
但是我发现我所期望的数字不太正确,所以我把变焦等级弄乱了
var mapScale = 591657550.5 / Math.pow( 2, zoom + 1);
// The results of this goes after the "1d" part in the map scale
Run Code Online (Sandbox Code Playgroud)
对于坐标,请在经纬度上使用base64(显示的示例适用于javascript),并长时间获取结果字符串。我已经使用十进制度数和度数分钟秒格式来工作。
var base64 = btoa([lat,long]); // lazy "lat,long" formatting
// the result of this goes after the "2z" part in the coordinate
Run Code Online (Sandbox Code Playgroud)
如果要编写脚本,这是一个使用javascript生成iframe的简单示例,但是您可能希望创建整个src服务器端。请注意:这与javascript解决方案无关,这是脚本解决方案的示例。
<iframe src="https://www.google.com/maps/embed?pb=
!1m18
!1m12
!1m3
!1d2256.8774176856136
!2d145.01353351606252
!3d-37.79291244062522
!2m3
!1f0
!2f0
!3f0
!3m2
!1i1024
!2i768
!4f13.1
!3m3
!1m2
!1s0x0%3A0x0
!2zLTM3Ljc5MjkxNjcgMTQ1LjAxNTcyMjI
!5e0
!3m2
!1sen
!2suk
!4v1532346966021
" width="600" height="450" frameborder="0" style="border:0" allowfullscreen></iframe>
Run Code Online (Sandbox Code Playgroud)
我在codepen上创建了一个示例,其中显示了原始嵌入,缩小的嵌入,没有缩放的嵌入以及脚本化的解决方案。https://codepen.io/mcgern/pen/zLZJmQ
您可能已经尝试过此方法,但是如果要投放的业务具有Google地方编号,则可以使用https://developers.google.com/places/place-id找到它。取得地点编号后,您就可以像这样在地点嵌入网址中使用它
<iframe width="600" height="450" frameborder="0" style="border:0"
src="https://www.google.com/maps/embed/v1/place?q=place_id:ChIJ02vd-
4QOZ0gR4ZG28bSShpk&key=<INSERT_API_KEY>" allowfullscreen></iframe>
Run Code Online (Sandbox Code Playgroud)
(我刚刚发现一个随机的地方,看起来像是与爱尔兰长途客车相同的建筑物)
2020 年更新:
1.在谷歌地图中找到您的位置
2.右键单击您的目标并选择What's here?
3.在屏幕下方你可以看到这样的坐标:29.586525, 52.546173
4.现在将坐标粘贴到搜索框中
5.单击share按钮并选择Embed a map并复制iframe标签
| 归档时间: |
|
| 查看次数: |
68034 次 |
| 最近记录: |