मैं समस्याओं & 8 और यहां तक कि 9.AngularJS और इंटरनेट एक्सप्लोरर
मेरे एप्लिकेशन लोड हो रहा है इंटरनेट पर हो रही एक्सप्लोरर 7 मैं निम्नलिखित त्रुटि संदेश मिल रहा (कंसोल)
Uncaught TypeError: Cannot read property 'nodeName' of undefined
लोड {पर {}} चर लोड हो रहे हैं और गायब हो रहे हैं। कुछ भी नहीं दिया गया है।
मैं HTML टैग को यह कहा:
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" xmlns:ng="http://angularjs.org" id="ng-app" class="ng-app: myapp;">
मैं AngularUI ढांचे से ieshiv.js गयी।
मैं
<!--[if lt IE 8]>
<script src="files/js/json3.min.js"></script>
<![endif]-->
(प्रश्न: है यह पर्याप्त है, सिर्फ मेरे सिर अनुभाग को जोड़ने या मैं अपने कोड भी संशोधित करना होगा?)
मैं भी मेरे सिर अनुभाग को यह कहा:
<!--[if lte IE 8]>
<script>
document.createElement('ng-include');
document.createElement('ng-pluralize');
document.createElement('ng-view');
document.createElement('slide');
document.createElement('carousel');
// Optionally these for CSS
document.createElement('ng:include');
document.createElement('ng:pluralize');
document.createElement('ng:view');
</script>
<![endif]-->
और यह बिल्कुल भी काम नहीं करता है। कोई चर लोड नहीं होता है, सूची नहीं दी जाती है और वेबसाइट काम नहीं कर रही है।
क्रोम, एफएफ और ओपेरा ठीक काम कर रहे हैं।
क्या आपके पास कोई संकेत है कि कहां से शुरू किया जाए?
संपादित करें 1: paste.bin
http://pastebin.com/z67qE9ME
संपादित 2 पर मेरे controller.js को
लिंक:
यह शायद js लोडिंग के आदेश है?
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min.js"></script>
<!--[if lt IE 8]>
<script src="files/js/json3.min.js"></script>
<![endif]-->
<script src="files/js/angular.min.js"></script>
<script src="files/js/ui-bootstrap-tpls-0.1.0-SNAPSHOT.js"></script>
<script src="files/js/angular-ui.js"></script>
<script src="files/js/angular-resource.min.js"></script>
<script src="files/js/controller.js"></script>
<script src="files/js/select2.js"></script>
<script src="files/js/main.js"></script>
संपादित करें 3:
ठीक है, मैं fauxconsole.js मेरी स्क्रिप्ट को जोड़ा गया और कोड साफ किया और यह काम किया। खैर, कम से कम यह ठीक से लोड हो रहा है (बिना किसी सीएसएस सुधार के)। लेकिन यह मेरे कुछ टैग पर इनलाइन शैली लोड नहीं करता है। क्या आपको पता है क्यों?
<a ng-click="details.show=toggle(marker)" ng-class="{active_marker: active_marker.show == marker.id}" href="#/dealer/{{marker.id}}" class="marker" style="left:{{marker.coordleft}}px;top:{{marker.coordtop}}px">
</a></div>
संपादित करें 4:
संपादित 3 भी इस मदद यहाँ के साथ हल किया जाता है:
https://groups.google.com/d/msg/angular/0zHsVuUryKI/ckTvY93NcRsJ
लेकिन अब मैं एक दूसरी समस्या मिला है। आईई 8 में और रूट टेम्पलेट के नीचे प्रतिपादन नहीं कर रहे हैं। मैं बस {{}} चर देखता हूं और अधिक नहीं।
संपादित करें 5:
यह अजीब बात है। मैं पहला टेम्पलेट सही लोड करने में कामयाब रहा। सभी ब्रैकेट {{}} ठीक से लोड हो रहे हैं।
मैं अपने कंट्रोल करने के लिए .resolve कहा:
// DealerDetailsCtrl
function DealerDetailsCtrl($scope, $rootScope, $routeParams, dealerService, datasets) {
$scope.loading = true;
// Abfrage
$rootScope.dealerdetails = datasets;
// inline styles fuer positionierung laden
$rootScope.itemStyle2 = function (item) {
return { left: item.divleft * 1 + 390 + 'px', top: item.divtop * 1 + 160 + 'px'};
};
//Feedback zur Message zurruecksetzen
$scope.issend = $rootScope.issend;
$rootScope.issend = false;
$scope.loading = false;
//Close Button
$rootScope.close = function() {
$rootScope.marker = null;
$rootScope.details = {show: false};
$rootScope.alldealer = {show: false};
$rootScope.active_marker = null;
};
$rootScope.$on("$routeChangeStart", function (event, next, current) {
$scope.loading = true;
});
}
DealerDetailsCtrl.resolve = {
datasets : function($q, $http, $route, $rootScope) {
var deferred = $q.defer();
$http.get('files/framework/dealer/'+ $route.current.params.id +'/' + $rootScope.token).success(function(data) {
deferred.resolve(data);
});
return deferred.promise;
}
};
अजीब बात है।(सही ढंग से प्रस्तुत) टेम्पलेट से, मैं दूसरे टेम्पलेट और रूट (डीलर/आईडी से/डीलरमेसेज/आईडी) से लिंक करता हूं, लेकिन यह मार्ग (और सबकुछ हल करने सहित समान है) ठीक से लोड नहीं हो रहा है पहले की तुलना में त्रुटि, टेम्पलेट प्रस्तुत नहीं किया गया है।
मार्गों:
app.config(['$routeProvider', function($routeProvider) {
$routeProvider.
when('/dealer/:id', {
templateUrl: 'files/tpl/dealer-details.html?333',
controller: 'DealerDetailsCtrl',
activetab: 'details',
resolve: DealerDetailsCtrl.resolve
}).
when('/dealermessage/:id', {
templateUrl: 'files/tpl/dealer-message.html?222',
controller: 'DealerMessageCtrl',
activetab: 'message',
resolve: DealerMessageCtrl.resolve
}).
when('/dealersendmessage/:id', {
templateUrl: 'files/tpl/dealer-details.html?444',
controller: 'DealerDetailsCtrl',
activetab: 'details',
resolve: DealerDetailsCtrl.resolve
}).
otherwise({
redirectTo: '/dealer'
});
}]);
किसी को भी एक सुराग, क्या या जहां गलती हो सकता है करता है?
: https://github.com/angular-ui/angular-ui/tree/master/common/ieshiv
के रूप में वहाँ कहा, आप केवल इस की जरूरत है एक jsfiddle में कोड शुरू करने के लिए एक शानदार तरीका होगा। – Patrick
यह काफी समस्या हो सकती है क्योंकि यह कई फाइलों में विभाजित एक ग्राहक प्रोजेक्ट है लेकिन मैं अपने नियंत्रक.जेएस और मुख्य HTML टेम्पलेट पोस्ट करूंगा। बस एक पल। – Marek123
''? – maxisam