我正在尝试显示一个谷歌静态地图,点击后会打开一个更大的iframe,用户可以在其中进行平移,缩放等。
以下代码:
<div>
<a class="various fancybox.iframe" title="Whitehouse - USA" href="https://maps.google.com/maps?f=d&source=s_d&saddr=&daddr=1600+Pennsylvania+Ave+NW,+White+House,+Washington,+DC+20500&hl=en&geocode=Ca3jx5Eq6BcjFQ6IUQIdG4Ro-ynPaZnjvLe3iTGGOSyaFzTP2g&sll=38.897678,-77.036517&sspn=0.009644,0.01443&g=1600+Pennsylvania+Avenue+Northwest,+Washington,+DC&mra=ls&ie=UTF8&t=m&ll=38.89768,-77.036519&spn=0.008016,0.013733&z=16&output=embed">
<img src="http://maps.googleapis.com/maps/api/staticmap?center=1600+Pennsylvania+Ave+NW,+White+House,+Washington,+DC+20500&markers=1600+Pennsylvania+Ave+NW,+White+House,+Washington,+DC+20500&size=300x300&sensor=false">
</a>
</div>
我试图查找与iframe相关的非JavaScript文档,但没有遇到任何问题。我想将以下添加到iframe :
标记中心 - JSFiddle显示为居中,但生产网站上运行的完全相同的代码会渲染iframe,标记显示在左上角。
删除标记标签&#34; B&#34;
从我的数据库输入我自己的坐标 - 例如...对纽约市,芝加哥等做同样的事情。但是,我尝试更改daddr
(目的地)地址),但我不确定其他变量代表什么(即sll,sspn,g,mra,ll等)
获取路线 - 插入起点,并获取前往预定目的地的路线
答案 0 :(得分:2)
<强> f
强>
必须 d
了解路线
<强> saddr
强>
起始地址,可以是字符串(可以是地理位置),也可以是latLng
<强> daddr
强>
目标地址,可以是字符串(可以是地理位置),也可以是latLng
<强> ll
强>
地图中心的位置(latlng)。当ommited时,地图将根据标记居中
<强> z
强>
地图的缩放。省略时,将根据方向
<强> output
强>
必须是embed
iframe
您在http://www.seomoz.org/ugc/everything-you-never-wanted-to-know-about-google-maps-parameters
找到的参数的详细列表和说明但是:您应该注意,没有任何参数是任何官方API的一部分,它可能每天都在变化
标记中心:
标记无法居中,因为在地图开始加载时iframe不可见,无法确定iframe的大小。您可以使用解决方法:
首先将虚拟页面加载到iframe中,当fancybox打开时,加载地图。
这可以通过将其添加到fancybox-options:
来完成beforeLoad: function(){
//store the original href for later use
this.oldhref=this.href;
//replace the href with some dummy-page
this.href='wait.htm';
return true;
},
afterLoad:function(){
//load the originally requested page to the iframe
$('.fancybox-iframe').attr('src',this.oldhref);
}
删除标记标签“B”
没有选择删除B,您可以用 A 替换它。
因此,您必须将标记设置为起始目的地的标记(saddr)
从我的数据库输入我自己的坐标
将坐标应用于saddr或daddr(取决于它应该是什么,开始或目的地)
获取路线 - 插入起点,并获取前往预定目的地的路线
见3.
最后:您应该考虑使用Maps-Javascript-API创建自己的地图,以获取您可以自己处理的地图。