2

現在、InternetExplorerとAngularjsに関して問題があります。

以下に示すように、htmlはChromeとFirefoxで正常にレンダリングされますが、ng-viewタグの内容はIEではまったくレンダリングされません。

<html xmlns:ng="http://angularjs.org">
<html lang="en" ng-app="poc">
<head>
<meta charset="utf-8">
<title>poc</title>
<link rel="stylesheet" href="css/app.css"/>
<link rel="stylesheet" href="css/bootstrap.css"/>
<script src="lib/angular/angular.js"></script>
<script src="js/app.js"></script>
<script src="js/services.js"></script>
<script src="js/controllers.js"></script>
<script src="js/filters.js"></script>
<script src="js/directives.js"></script>
<script src="cordova-2.1.0.js"></script>
<script src="js/jquery.min.js"></script>
</head>
<body>
<div ng-view>
</div>
</body>
</html>

これに注入しようとしている部分を以下に示します。

<section>
<h1>Proof of Concept</h1>
<ul>
<li><a href="#/phonegap">Try Phonegap Features</a></li>
<li><a href="#/observations">Test Websocket Requests</a></li>
<li><a href="#/persondetails">Test Person Details Requests</a></li>
</ul>
<section>

以下のコードは、使用しているルーティングの実装を示しています。

'use strict';

angular.module('poc', ['pocFilters', 'pocServices']).
config(['$routeProvider', function($routeProvider){
$routeProvider.
    when('/poc', {templateUrl: 'partials/poc.html',   controller: PocCtrl}).

    when('/observations', {templateUrl: 'partials/observations.html', 
    controller: ObservationsCtrl}).

    when('/phonegap', {templateUrl: 'partials/phonegap.html',
    controller: PhonegapCtrl}).

    when('/persondetails', {templateUrl: 'partials/persondetails.html',
    controller: PersondetailsCtrl}).

    otherwise({redirectTo: '/poc'});
}]);

IEで問題を引き起こしている可能性があるものについて誰かが何か考えを持っていますか?

ありがとう、

パトリック

4

4 に答える 4

12

まず、 IEのangularjsドキュメントを確認する必要があります。私はangular-ui用のIEShivを作成しました。これにより、これを実行できなくなります。要素スタイルのディレクティブ(ng-view、ng-includeなど)を作成すると、どのAngularモジュールにこれらのディレクティブがあるかをshivに指示できます。

于 2012-10-20T22:50:13.130 に答える
0

HTML5 要素には shim (具体的には section タグ) が必要です。1 つだけ必要な場合は 2 つの html タグがあり、実際には doctype を宣言する必要があります。さらに、id="ng-app" を html タグに追加する必要があります動作するIE7。

document.createElement();要素をシムするには、各要素のステートメントを含むスクリプト (ファイルまたはタグのみ) を作成しますdocument.createElement('section')

それはあなたを正しく設定するはずです。

于 2013-09-03T17:26:35.433 に答える