【问题标题】:Google Maps in Drupal: reference to gmap object from JavaScriptDrupal 中的 Google 地图:从 JavaScript 引用 gmap 对象
【发布时间】:2010-02-25 00:57:26
【问题描述】:

有没有办法获得对 GMap 模块嵌入 Drupal 页面的 Google 地图的 JavaScript 引用?我希望能够操作这些页面中的地图。我想平移和缩放它们。但我找不到对嵌入式地图对象的引用。我已经剖析了相关的 JavaScript 对象 Drupal.gmapDrupal.settings.gmap,但没有成功——除非我忽略了一些东西。

Drupal GMap 模块似乎没有显式地(在其 API 中)提供对其嵌入页面的 GMap 对象的引用。它只是生成插入到页面中的主题文本。

将地图容器的 HTML ID 传递给 GMap2 对象构造函数或类似的 Drupal.gmap.getMap() 函数以获取地图引用的技术似乎不起作用:两者都只是将实例返回到 地图,具有与原始地图相同的尺寸和基本特征,但显然没有其所有叠加层(可能包含标记)。而且我必须先调用setCenter(),然后才能使用它,这会初始化结构,所以我知道它没有覆盖。

【问题讨论】:

    标签: javascript drupal google-maps


    【解决方案1】:

    这对我有用:

    Drupal.gmap.getMap('mapid').map.setZoom(10)
    

    实际的地图对象似乎在 getMap() 函数返回的对象的地图属性中。执行上述操作会更改页面上地图的缩放比例。

    【讨论】:

      【解决方案2】:

      您可以使用 drupal_add_js() 将 php 值传递给 javascript。

      例子

      drupal_add_js(array('mymodule' => array(
           'username' => 'Erik',)), 'setting')
      

      那么在JS中就可以使用

      Drupal.settings.mymodule.username
      

      访问“埃里克”

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-05-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-07-07
        • 2019-08-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多