我有以下脚本:
<script src="https://maps.googleapis.com/maps/api/js?sensor=false&libraries=visualization">
</script>
<script>
var map;
function initialize() {
var mapOptions = {
zoom: 5,
center: new google.maps.LatLng(2.8,-187.3),
mapTypeId: google.maps.MapTypeId.TERRAIN
};
map = new google.maps.Map(document.getElementById('map_canvas'),
mapOptions);
var script = document.createElement('script');
script.src = 'geojson';
document.getElementsByTagName('head')[0].appendChild(script);
}
window.eqfeed_callback = function(results) {
for (var i = 0; i < results.features.length; i++) {
var coords = results.features[i].geometry.coordinates;
var latLng = new google.maps.LatLng(coords[1],coords[0]);
var marker = new google.maps.Marker({
position: latLng,
map: map
});
}
}
</script>
因为可以看出script.src是一个名为'geojson'的文件 我正在开发一个浏览器应用程序,用户点击下拉菜单中的一年。后端脚本被执行并生成一个新的geojson文件,其中包含geojson格式的新坐标。但是在重新加载页面之前,这些位置在当前地图中不可见。是否可以在脚本执行后1或2秒重新加载地图,或者是否有某种方式通过ajax发回数据,以便地图检测新位置并显示它们。 Thanx任何帮助。
答案 0 :(得分:0)
我终于通过在click事件上调用此函数initialize()来完成此操作。因此,每次用户单击按钮时,都会调用此函数,现在script.src引用脚本形成的新geojson文件。