Javascript 保留地图对象:将多个地图添加到多个div中的单个页面
我正在尝试使用Jquery对话框和google maps API V3在一个页面上添加多个地图 以下是我的jquery代码:Javascript 保留地图对象:将多个地图添加到多个div中的单个页面,javascript,jquery,jquery-ui,google-maps,google-maps-api-3,Javascript,Jquery,Jquery Ui,Google Maps,Google Maps Api 3,我正在尝试使用Jquery对话框和google maps API V3在一个页面上添加多个地图 以下是我的jquery代码: function liveTrack_setMap(accountID, deviceID, displayNameOfVehicle) { var divtoBeAdded = '<div class="lt_outerDivClass" id="lt_dialog' + deviceID + '" title="Live Track: ' + displ
function liveTrack_setMap(accountID, deviceID, displayNameOfVehicle) {
var divtoBeAdded = '<div class="lt_outerDivClass" id="lt_dialog' + deviceID + '" title="Live Track: ' + displayNameOfVehicle + '" > <input type="hidden" /><div class="lt_map" style="height:200px;width;200px;" id="lt_map' + deviceID + '"></div></div>';
if ($('#lt_dialog' + deviceID).length == 0) {
$('body').append(divtoBeAdded);
alert('new Div Added');
}
if ($('#lt_dialog' + deviceID).length != 0) {
$('#lt_dialog' + deviceID).dialog({
autoOpen: true,
modal: false,
resizable: false,
draggable: true,
close: function() {
$(this).dialog('destroy').remove();
}
});
}
if ($('#lt_map' + deviceID).length != 0) {
var mapOptions = {
center: new google.maps.LatLng(-34.397, 150.644),
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("lt_map" + deviceID),
mapOptions);
}
}
功能liveTrack\u setMap(accountID、deviceID、DisplayNameof Vehicle){
var divtoheaded='';
if($('#lt#u dialog'+deviceID).length==0){
$('body').append(divtoheaded);
警报(“新增部门”);
}
if($('#lt#u dialog'+deviceID).length!=0){
$(“#lt#u dialog”+设备ID).dialog({
自动打开:对,
莫代尔:错,
可调整大小:false,
真的,
关闭:函数(){
$(this.dialog('destroy').remove();
}
});
}
if($('#lt#u map'+deviceID).length!=0){
变量映射选项={
中心:新google.maps.LatLng(-34.397150.644),
缩放:8,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
var map=new google.maps.map(document.getElementById(“lt_map”+deviceID),
地图选项);
}
}
将地图应用到div后,我将使用它每10秒更新地图上车辆的位置。但问题是,
1) div的数量不是固定的
2) 贴图对象不能是全局变量,因为它们可以是n个贴图对象
3) 映射对象的div ID无法访问它
我该怎么做呢?有什么想法吗?请帮忙 为什么不把它保存在这样一个对象中 声明一个全局变量:
var map_object = {}
然后在设置地图时:
var index=1;
map_object["map" + index]=new google.maps.......
非常感谢。正是我想要的。!