空或未定義的錯誤我得到這個錯誤,當我的OpenLayers調用map.AddPopup():的OpenLayers:在AddPopup
無法獲取財產「左」的價值;對象爲空或未定義
http://www.openlayers.org/api/OpenLayers.js
在Chrome和IE發生同樣的錯誤。當我將該行註釋掉時,地圖工作正常,並且標記也可以正常工作。後來,icon0和lonLat0將循環中的幾個項目,但我會處理。最終結果應該是某種可以顯示在標記上的文本框。
lonLat0上的標記顯示,所以它看起來不像是lonLat對象的問題。
是的,我會在最後一次顯示對他們的所有文字許多標記。我知道,這似乎很愚蠢,但這就是要求。
爲什麼addPopup會給我這個錯誤?
<html><body>
<div id='mapdiv'></div> <script src='http://www.openlayers.org/api/OpenLayers.js'></script>
<script>
map = new OpenLayers.Map('mapdiv');
map.addLayer(new OpenLayers.Layer.OSM());
var lonLat = new OpenLayers.LonLat(-104.73,38.92).transform(new OpenLayers.Projection('EPSG:4326'), map.getProjectionObject());
var markers = new OpenLayers.Layer.Markers('Markers');
map.addLayer(markers);
markers.addMarker(new OpenLayers.Marker(lonLat));
function onPopupClose(evt) {selectControl.unselect(this.feature); }
var icon0 = new OpenLayers.Icon("pinMS.png", new OpenLayers.Size(32,32), new OpenLayers.Pixel(-16,-32));
var lonLat0 = new OpenLayers.LonLat(-104.73,38.92).transform(new OpenLayers.Projection('EPSG:4326'), map.getProjectionObject());
markers.addMarker(new OpenLayers.Marker(lonLat0, icon0.clone()));
// Error throws here
map.addPopup(new OpenLayers.Popup.FramedCloud("featurePopup", lonLat0, new OpenLayers.Size(10, 10), "<h2>Title</h2>description", null, true, onPopupClose));
map.setCenter (lonLat, 1);
</script></body></html>