簡體   English   中英

打開圖層中的Javascript“未指定的錯誤”

[英]Javascript “unspecified error” in Open Layers

我在地圖加載時收到此錯誤alt文本http://img239.imageshack.us/img239/6936/jserror.png

錯誤發生在此行的原始未修改的OpenLayers.js文件中:

return!!(document.namespaces);

我試過把它重寫為:

return (typeof(document.namespaces) != 'undefined');

並且它工作但我在進一步引用document.namespaces時得到相同的“未指定”錯誤:

if(!document.namespaces.olv){document.namespaces.add("olv",this.xmlns); ...

我嘗試將其重寫為:

if(typeof(document.namespaces.olv) == 'undefined') { ...

但我得到了相同的“未指明的錯誤”。

我只在Internet Explorer上遇到此錯誤(我在7上測試過)而不是在Firefox中。

有線索嗎?

謝謝。

真正的問題是,有時在觸發$(document).ready(因為VML)時,document.namespaces在IE8中還沒有准備好

你可以改用:

jQuery(window).load(function() {} ...);

我找到了解決方案。

問題是我在使用Jquery准備DOM時創建了地圖:

$(document).ready(function(){  ... //create map here [WRONG]

您所要做的就是在onload事件之后創建地圖:

window.onload = function() { ... // create map here [CORRECT]

Internet Explorer的問題在於,當頁面准備好文檔或窗口加載時,該M $瀏覽器還無法確定地圖畫布的尺寸。 如果您想解決此問題,您還可以考慮設置地圖div尺寸:

<div id="map" style="width:250px;height:250px"></div>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM