У меня есть карта, которая читает XML-файл; это все очень просто и скопировано отсюда: http://geochalkboard.wordpress.com/2009/03/30/reading-xml-files-with-the-google-maps-api/Google Map javascript Маркеры MarkerManager не отображаются
Моя версия здесь: http://www.cloudfund.me/maps/mashup.html и файл данных это чтение здесь: converted.xml в том же каталоге.
Я не получаю никаких баллов, когда я запускаю его. Я запустил несколько консольных журналов, чтобы увидеть, могу ли я что-нибудь увидеть, но, насколько это важно, он просто пробегает без затруднений. Файл загружается нормально, и я могу без проблем наблюдать цикл кода через все строки (208 в этом примере).
только предупреждение, которое я получаю, является «ресурсом, интерпретируемым как другой, прошедший как неопределенный»; взглянув на некоторые из других потоков, я не вижу ничего, что помогает - никаких пустых ссылок src и т. д. Насколько я могу судить, это не должно мешать этому отмечать точки.
Вот реальный кикер - пытаясь отследить эту ошибку, я установил точную копию исходного кода на моем собственном сервере и получил ошибку об нулевых полях, и я добавил некоторый условный код для сортировки; эта версия работает на моем сервере. Это austin.html в том же каталоге (к сожалению, не может сделать больше, чем две ссылки в моих первых постов!)
Итак - мой код это:
<title>Test </title>
<script src="http://maps.google.com/maps?file=api&v=2&sensor=false&key=AIzaSyDgybFoyn3i5j_6d7ul7p2dPNQ5b1xOWnk"
type="text/javascript">console.log("Loaded Maps API");</script>
<script src="http://gmaps-utility-library.googlecode.com/svn/trunk/markermanager/release/src/markermanager.js">console.log("MarkerManager");</script>
<script type="text/javascript">
console.log("Into Main Script");
function initialize() {
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("map_canvas"));
map.setCenter(new GLatLng(51.39906378, -2.449545605), 13);
map.setUIToDefault();
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
map.addMapType(G_PHYSICAL_MAP);
map.setMapType(G_PHYSICAL_MAP);
console.log("Reached end of map initialising");
addMarkersFromXML();
console.log("MarkersfromXML")
}
}
function addMarkersFromXML(){
var batch = [];
mgr = new MarkerManager(map);
var request = GXmlHttp.create();
console.log("About to open converted.xml")
request.open('GET', 'converted.xml', true);
console.log("Opened Converted.xml")
request.onreadystatechange = function() {
if (request.readyState == 4 && request.status == 200)
{
var xmlDoc = request.responseXML;
var xmlrows = xmlDoc.documentElement.getElementsByTagName("row");
for (var i = 0; i < xmlrows.length; i++) {
var xmlrow = xmlrows[i];
console.log("Running through row number",i)
var xmlcellLongitude = xmlrow.getElementsByTagName("longitude")[0];
console.log(xmlcellLongitude);
var xmlcellLatitude = xmlrow.getElementsByTagName("latitude")[0];
var point = new GLatLng(parseFloat(xmlcellLatitude.firstChild.data),parseFloat(xmlcellLongitude.firstChild.data));
//get the PAO
var xmlcellAssetName = xmlrow.getElementsByTagName("pao")[0];
console.log(xmlcellAssetName);
var celltextAssetName = xmlcellAssetName.firstChild.data;
//get the area
var xmlcellArea = xmlrow.getElementsByTagName("area")[0];
console.log(xmlcellArea);
var celltextArea = xmlcellArea.firstChild.data;
//get the land type
var xmlcellLandType = xmlrow.getElementsByTagName("landtype")[0];
console.log(xmlcellLandType);
var celltextLandType = xmlcellLandType.firstChild.data;
//get the Planning Permissions
var xmlcellPlanning = xmlrow.getElementsByTagName("planning")[0];
console.log(xmlcellPlanning);
var celltextPlanning = xmlcellPlanning.firstChild.data;
var htmlString = "Asset Name: " + celltextAssetName + "<br>" + "Size: " + celltextArea + "<br>" + "Land Type: " + celltextLandType + "<br>" + "Planning Permissions: " + celltextPlanning;
//var htmlString = 'yes'
var marker = createMarker(point,htmlString);
batch.push(marker);
}
mgr.addMarkers(batch,50);
mgr.refresh();
}
}
request.send(null);
}
function createMarker(point,html) {
var marker = new GMarker(point);
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowHtml(html);
});
return marker;
}
</script>
</head>
<body onload="initialize()" onunload="GUnload()">
<div id="map_canvas" style="width: 1100px; height: 700px"></div>
</body>
</html>
Спасибо! Я сначала посмотрю на этот URL-адрес ... Хм, на втором. Я полный новичок (следовательно, начиная с чужого кода). Так что это может занять некоторое время. – Withnail
Я прояснил эту опечатку, но ничего не делаю. Ба. Является ли код g3 v3 существенно отличающимся? – Withnail
URL-адрес, начинающийся с '//', не является опечаткой, а относительным URL-адресом ** ** (http://paulirish.com/2010/the-protocol-relative-url/). Это приведет к тому, что скрипт карт будет загружен с тем же протоколом (http или https) в качестве содержательной страницы. – gapple