Javascript谷歌地图API-自动刷新/重新加载简单地图

Javascript谷歌地图API-自动刷新/重新加载简单地图,javascript,api,maps,refresh,reload,Javascript,Api,Maps,Refresh,Reload,我一直在使用下面的谷歌地图示例代码。它显示了一个在城市上盘旋的圆圈,人口越多,圆圈越大。此代码运行良好,但是。。。它仅在我重新加载浏览器窗口时重新加载。有没有更聪明的方法让它自动刷新/重新加载?非常感谢 <!DOCTYPE html> <html> <head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no"> <meta charse

我一直在使用下面的谷歌地图示例代码。它显示了一个在城市上盘旋的圆圈,人口越多,圆圈越大。此代码运行良好,但是。。。它仅在我重新加载浏览器窗口时重新加载。有没有更聪明的方法让它自动刷新/重新加载?非常感谢

<!DOCTYPE html>
<html>
  <head>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
    <meta charset="utf-8">
    <title>Circles</title>
    <style>
      html, body {
        height: 100%;
        margin: 0;
        padding: 0;
      }
      #map {
        height: 100%;
      }
    </style>
  </head>
  <body>
    <div id="map"></div>
    <script>
      // This example creates circles on the map, representing populations in North
      // America.

      // First, create an object containing LatLng and population for each city.
      var citymap = {
        chicago: {
          center: {lat: 41.878, lng: -87.629},
          population: 2714856
        },
        newyork: {
          center: {lat: 40.714, lng: -74.005},
          population: 8405837
        },
        losangeles: {
          center: {lat: 34.052, lng: -118.243},
          population: 3857799
        },
        vancouver: {
          center: {lat: 49.25, lng: -123.1},
          population: 603502
        }
      };

      function initMap() {
        // Create the map.
        var map = new google.maps.Map(document.getElementById('map'), {
          zoom: 4,
          center: {lat: 37.090, lng: -95.712},
          mapTypeId: 'terrain'
        });

        // Construct the circle for each value in citymap.
        // Note: We scale the area of the circle based on the population.
        for (var city in citymap) {
          // Add the circle for this city to the map.
          var cityCircle = new google.maps.Circle({
            strokeColor: '#FF0000',
            strokeOpacity: 0.8,
            strokeWeight: 2,
            fillColor: '#FF0000',
            fillOpacity: 0.35,
            map: map,
            center: citymap[city].center,
            radius: Math.sqrt(citymap[city].population) * 100
          });
        }
      }
    </script>
    <script async defer
    src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap">
    </script>
  </body>
</html>

圈子
html,正文{
身高:100%;
保证金:0;
填充:0;
}
#地图{
身高:100%;
}
//本例在地图上创建圆圈,表示北方的人口
//美国。
//首先,为每个城市创建一个包含LatLng和人口的对象。
var citymap={
芝加哥:{
中心:{lat:41.878,lng:-87.629},
人口:2714856
},
纽约:{
中心:{lat:40.714,lng:-74.005},
人口:8405837
},
洛杉矶:{
中心:{lat:34.052,lng:-118.243},
人口:3857799
},
温哥华:{
中心:{lat:49.25,lng:-123.1},
人口:603502
}
};
函数initMap(){
//创建地图。
var map=new google.maps.map(document.getElementById('map'){
缩放:4,
中心:{lat:37.090,lng:-95.712},
mapTypeId:'地形'
});
//为城市地图中的每个值构建圆。
//注:我们根据人口来缩放圆的面积。
用于(城市地图中的var城市){
//将该城市的圆圈添加到地图中。
var cityCircle=new google.maps.Circle({
strokeColor:“#FF0000”,
笔划不透明度:0.8,
冲程重量:2,
填充颜色:'#FF0000',
不透明度:0.35,
地图:地图,
中心:城市地图[城市]。中心,
半径:Math.sqrt(城市地图[城市].人口)*100
});
}
}

您可以使用名为location.reload(true)的方法,并将其设置为计时器,甚至在periodialExecuter函数中使用此方法中的reload,类似于以下内容

new PeriodicalExecuter(function(pe) {
        location.reload(true);
    }, 10);

这将每十秒钟重新加载一次页面…就像您自己加载浏览器一样

您只需要添加自动刷新Jscript

<script language="javascript">
setTimeout(function(){
window.location.reload(1);
}, 5000);
</script>

setTimeout(函数(){
窗口。位置。重新加载(1);
}, 5000);