7

要獲得AngularJS在IE7和IE8的工作,我添加了ID = 「NG-應用」 和class = 「NG-應用」 我的NG-app元素:爲什麼ng-class =「ng-app」打破AngularJS?

<html id="ng-app" class="ng-app" ng-app="myApp"> 
    <div ng-view></div> 
</html> 

這在過去一直起作用,但現在我已經爲兩個不同的項目添加了class =「ng-app」,並且這兩個視圖都不再在任何瀏覽器中呈現。有沒有辦法改變IE7/8的兼容性?我正在使用CDN版本1.0.2。

謝謝。

+0

添加類= 「NG-應用」 固定IE8對我來說,這樣的感謝! –

回答

12

編輯說明:添加doctype標籤將減少一些問題。 感謝@Mike PATERAS

<!doctype html> 

原文:

試試這個

<html lang="en" class="ng-app:myapp" id="ng-app" ng-app="myapp" xmlns:ng="http://angularjs.org"> 
    <head>    
     <!--[if lt IE 9]> 
          <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> 
        <![endif]--> 
        <!--[if lte IE 8]> 
          <script> 
            document.createElement('ng-include'); 
            document.createElement('ng-pluralize'); 
            document.createElement('ng-view'); 
            document.createElement('ng:include'); 
            document.createElement('ng:pluralize'); 
            document.createElement('ng:view'); 
          </script> 
        <![endif]--> 
        <!--[if lt IE 8]> 
          <script src="https://cdnjs.cloudflare.com/ajax/libs/json2/20150503/json2.min.js"></script> 
        <![endif]--> 
      </head> 
+0

本地修復了所有瀏覽器中的視圖問題,但是當我使用IE從另一臺計算機指向服務器時(Chrome可以遠程正常工作),我的視圖僅顯示爲空的。此外,IE的所有版本都遭受了奇怪的行爲,當我嘗試檢查元素時,他們擁有這些'jQuery1800492917332865918 = 3'屬性。這對IE來說是正常的嗎? –

+0

不,它對我來說很好。我在服務器上部署了上面的代碼,它工作正常。我的意思是至少在功能方面,它工作正常,你仍然需要修復css – maxisam

+0

我最好的猜測會是你的IE保持緩存。你不能只打開開發工具上的清除緩存。不知何故,每次都不行。這發生在我身上一次。 – maxisam