2014-07-17 81 views
0

我在使用IE8中的dojo 1.9加載我的應用程序頁面時出現問題。它從IE9以及Firefox和Chrome瀏覽器完美地工作。Dojo 1.9在IE8上無法正常工作,在IE9以上工作完美

在控制檯中拋出的錯誤是「LOG:回調中的異常:錯誤:找不到成員」,有時候「中間爲空或不是對象」,頁面停止呈現。

的HTML是:

<!DOCTYPE html> 
<html> 
<head> 
<style> @import "../../../Scripts/dojolib/release/dijit/themes/claro/claro.css"; @import "../../../Scripts/dojolib/release/dijit/themes/dijit.css"; @import "../../../Scripts/dojolib/release/dgrid/css/dgrid.css"; </style><style type="text/css"> body { autofocus:false; } </style><meta charset="utf-8"> 
<meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible"> 
<title>XYZ</title> 
<link rel="stylesheet" href="../css/app-min.css"> 
<link rel="stylesheet" href="../css/systemsettings.css" /> 
<link rel="stylesheet" href="../css/pageLayout.css"> 
<link rel="stylesheet" href="../css/X420_style.css"> 
<script src='../../../Scripts/gw-app-config.js'></script><script src='../../../Scripts/dojolib/release/dojo/dojo.js'></script><script src='../scripts/gw-app.js'></script></head> 
<body class="claro" > 
<div id="maincontainer" class="container" style="width:1200px; margin: 0 auto; overflow: hidden; display: block;"> 
     <div id="body" class="row"> 
      <div class="wrapper"> 
       <div id="topBanner" data-dojo-type = "dijit/layout/ContentPane"></div> 
       <div id="topMenu" data-dojo-type = "dijit/layout/ContentPane"></div> 
       <div id="content" data-dojo-type = "dijit/layout/ContentPane"></div> 
       <div id="footer" data-dojo-type = "dijit/layout/ContentPane"></div> 
      </div> 
     </div> 
</div> 
</body> 
</html> 

請告訴我什麼都不可能出錯的IE8,我該如何調試這個問題?

回答

0

我解決了這個以同樣的方式belzebu很多調試強調了後。 IE8在每個Dojo語句中都拋出了Dojo聲明,其中Dojo爲IE8不受支持的CSS字段(如背景,線性漸變)應用CSS樣式。 我也淘汰了dom.byId()和used style.set() 的使用我也用IE8和其他瀏覽器支持的CSS取代了CSS。

0

儘管您發佈了看起來像整個頁面的內容,但無法測試,因爲我們不知道它在哪裏。指定dojoConfig。我相信這是在gw-app-config.js文件中,但是那裏還有什麼?

關於你的問題,我注意到的第一件事是你的meta標籤不在層次結構之上,它們應該緊跟在head標籤之後。這將是第一個要測試的建議。

請訪問以下鏈接與第二個答案,這可能是不一樣的問題,因爲你的,但類似的 X-UA-Compatible is set to IE=edge, but it still doesn't stop Compatibility Mode

+0

是@belzebu,我更正了元標記層次和其他內容,但問題仍然存在。任何人都知道如何快速分析IE不兼容的代碼? – rocktopus

+0

我不認爲有任何東西會解析你的代碼,並強調IE8的任何可能的問題。恐怕你將不得不一個接一個地看一個文件,甚至可能一行一行地查看它失敗的地方。根據我的經驗,IE8非常挑剔和無情,例如未終止的代碼行或任何「次要」語法錯誤都會阻止IE中的整個頁面。 – belzebu

相關問題