带有 Google iframe 链接的 Google 静态地图图像

2024-04-28

我正在尝试显示一个谷歌静态地图,单击该地图时,将打开一个更大的 iframe,用户可以在其中平移、缩放等。

JSF 在这里 http://jsfiddle.net/thong/Q4FE7/

代码如下:

<div>
    <a class="various fancybox.iframe" title="Whitehouse - USA" href="https://maps.google.com/maps?f=d&amp;source=s_d&amp;saddr=&amp;daddr=1600+Pennsylvania+Ave+NW,+White+House,+Washington,+DC+20500&amp;hl=en&amp;geocode=Ca3jx5Eq6BcjFQ6IUQIdG4Ro-ynPaZnjvLe3iTGGOSyaFzTP2g&amp;sll=38.897678,-77.036517&amp;sspn=0.009644,0.01443&amp;g=1600+Pennsylvania+Avenue+Northwest,+Washington,+DC&amp;mra=ls&amp;ie=UTF8&amp;t=m&amp;ll=38.89768,-77.036519&amp;spn=0.008016,0.013733&amp;z=16&amp;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,且标记出现在左上角。

去掉标记标签“B”

从我的数据库输入我自己的坐标- 例如...对纽约市、芝加哥等做同样的事情...但是,我尝试改变daddr(目标地址),但不确定其他变量代表什么(即 sll、sspn、g、mra、ll 等)

获取路线 - 插入起点,并获取前往预定目的地的路线


首先解释一下您需要的参数:

  • f
    必须d寻找方向

  • saddr
    起始地址,可以是字符串(将被地理定位)或 latLng

  • daddr
    目的地地址,可以是字符串(将被地理定位)或 latLng

  • ll
    地图居中位置(latlng)。省略时,地图将根据标记居中

  • z
    地图的缩放。省略时,地图将根据方向缩放

  • output
    必须embed对于 iframe

您可以在以下位置找到参数的详细列表和说明http://www.seomoz.org/ugc/everything-you-never-wanted-to-know-about-google-maps-parameters http://www.seomoz.org/ugc/everything-you-never-wanted-to-know-about-google-maps-parameters

但是:您应该注意,所有参数都不是任何官方 API 的一部分,它可能每天都会发生变化


问题:

  1. 以标记为中心:
    标记无法居中,因为当地图开始加载时 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);
    }
    
  2. 去掉标记标签“B”
    没有删除 B 的选项,您所能做的就是将其替换为A。 因此,您必须将标记设置为起始目的地 (saddr) 的标记

  3. 从我的数据库输入我自己的坐标
    将坐标应用于saddr或daddr(取决于它应该是什么,起点或目的地)

  4. 获取路线 - 插入起点,并获取前往预定目的地的路线
    see 3.


最后:您应该考虑使用 Maps-Javascript-API 创建自己的地图,以获得您可以自己处理的地图。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

带有 Google iframe 链接的 Google 静态地图图像 的相关文章

随机推荐