我目前正在從一個XML文件中拉取Google地圖位置並將它們加載到地圖中的應用程序。目前Load()函數附加到body標籤。 IOW,body onLoad =「load()」onunload =「GUnload()」。谷歌地圖加載()啓動
我正在PHP環境中工作,所以我創建了一個映射文件,我想將它包含在許多地方,頁面中,並將不同的參數傳遞給不同的地圖。
這就是說,我不知道如何啓動load()函數,除了body標籤。當然,如果我簡單地將文件包含在不同的頁面中,這是一個問題,因爲第二個主體標記會使我的HTML無效。
這裏的負載功能:
function load() {
if (isCompatible) {
// Create Map
map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(40, -90), 3);
// Add controls
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
resetPolygon();
GDownloadUrl("<?php echo $XML; ?>", function(data) {
var xml = GXml.parse(data);
var markers_xml = xml.documentElement.getElementsByTagName("marker");
var bounds = new GLatLngBounds();
for (var i = 0; i < markers_xml.length; i++) {
var listid = markers_xml[i].getAttribute("lid");
var voterid = markers_xml[i].getAttribute("voterid");
var contacted = markers_xml[i].getAttribute("contacted");
var name = markers_xml[i].getAttribute("name");
var address = markers_xml[i].getAttribute("address");
var type = markers_xml[i].getAttribute("type");
var iconcolor = markers_xml[i].getAttribute("iconcolor");
var point = new GLatLng(parseFloat(markers_xml[i].getAttribute("lat")),
parseFloat(markers_xml[i].getAttribute("lng")));
if(contacted == '2'){
var thecolor = "#CCCCCC"
}else{
var thecolor = iconcolor
}
var marker = createMarker(point, voterid, name, address, type, thecolor, listid);
map.addOverlay(marker);
bounds.extend(point);
markers.push(marker);
markers[i].voterid = voterid;
markers[i].contacted = contacted;
}
map.setZoom(map.getBoundsZoomLevel(bounds));
map.setCenter(bounds.getCenter());
}); updatePoints();
}
}
如果您需要更多信息,請告訴我。任何幫助是極大的讚賞。
明顯。這就是我發佈這個問題的原因。此評論沒有幫助。 – jmorhardt 2010-07-03 11:32:21
是啊,得承認我誤讀你的帖子。 – Nicolas78 2010-07-24 10:14:44