Javascript 单个页面上的谷歌地图数量可变
我正在使用ajax在一个页面中加载多个Google地图。它们是动态生成的,每页呈现的贴图数量不同。我找到了我问题的部分解决办法Javascript 单个页面上的谷歌地图数量可变,javascript,jquery,google-maps,variables,code-reuse,Javascript,Jquery,Google Maps,Variables,Code Reuse,我正在使用ajax在一个页面中加载多个Google地图。它们是动态生成的,每页呈现的贴图数量不同。我找到了我问题的部分解决办法 我的问题是我没有固定数量的地图。是否有一种方法可以动态生成存储映射对象(map1、map2等)的变量的名称?有没有更好的解决方案不需要生成变量名?有。在javascript中使用数组。大概是这样的: var mapObjects; function geAllMapDivs() { var allDivs = document.getE
我的问题是我没有固定数量的地图。是否有一种方法可以动态生成存储映射对象(map1、map2等)的变量的名称?有没有更好的解决方案不需要生成变量名?有。在javascript中使用数组。大概是这样的:
var mapObjects;
function geAllMapDivs() {
var allDivs = document.getElementsByTagName('DIV'), i, L;
var mapDivs = [];
for(i=0, L=allDivs.length; i<L; i++) {
if (allDivs[i].id.substring(0,4) == "map_") {
mapDivs.push(allDivs[i]);
}
}
return mapDivs;
}
function createMaps() {
var mapDivs = getAllMapDivs(), i, L;
mapObjects = [];
for(i=0, L=mapDivs.length; i<L; i++) {
mapObjects.push(new google.maps.Map(mapDivs[i], myOptions));
}
}
var映射对象;
函数geAllMapDivs(){
var allDivs=document.getElementsByTagName('DIV'),i,L;
var-mapDivs=[];
对于(i=0,L=allDivs.length;i之后,我将如何引用它们?mapObjects[0]
,mapObjects[1]
等等。在createMaps()之后
函数完成后,您可以引用mapObjects
就像在createMaps
函数中引用mapDivs
一样。它们都是对象数组。(虽然mapDivs
仅在createMaps
函数中已知)