【问题标题】:Google maps - load polygon on marker click谷歌地图 - 在标记点击时加载多边形
【发布时间】:2012-06-19 17:59:07
【问题描述】:

我有一个包含多边形数据的 kml 文件,该文件太复杂而无法加载到一个 googlemap 上,因为它包含数千个不会一次加载的纬度坐标。

我的问题是,点击地图标记时是否可以只加载一个多边形?我有一个 mysql 数据库表,其中包含每个标记的 latlngs,并且该表还有一个 polyCoords 列。我正在使用正确显示所有标记的 php 遍历数据。然后我可以向标记添加一个侦听器,该侦听器将从 polyCoords 列加载数据并仅显示该单击的地图标记的多边形吗?

<script type="text/javascript">
function initialize()
{

    var centre = new google.maps.LatLng(34.233753,-83.828712);

    var myOptions =
    {
        zoom: 4,
        center: centre,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    }

    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

    <?php while ($row = @mysql_fetch_assoc($result)) 
{?>

    var myLatlng = new google.maps.LatLng(<?php echo $row['lat'] . ','  . $row['lng']?>);

    var marker = new google.maps.Marker
    (
        {
            position: myLatlng,
            map: map
        }
    );  

<?php }?>

}
</script>

谢谢

【问题讨论】:

    标签: php mysql google-maps


    【解决方案1】:

    是的。研究 AJAX。

    Google 文档中有一些文章可能会有所帮助:https://developers.google.com/maps/documentation/javascript/articles

    看看将 PHP/MySQL 与 Google 地图结合使用使用 PHP 和 MySQL 创建商店定位器。后者包括从数据库中获取数据并更新地图上显示的内容(它是标记而不是多边形边界,但技术非常相似)。

    如果您遇到特定的编码困难,请提出相关问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-11
      • 1970-01-01
      • 2016-11-22
      • 1970-01-01
      • 2012-09-27
      • 2014-12-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多