From 0d2d7025e60095afc3497c6cd4a4af9e0cd9b90e Mon Sep 17 00:00:00 2001 From: Igor Minar Date: Thu, 7 Apr 2011 14:36:41 -0700 Subject: use special nodeName_ impl only for IE<9 apparently IE9 is one step closer to becoming a real browser by treating xmlns-like ("foo:") prefixes in node names as part of the node name. fixes: https://groups.google.com/forum/?lnk=srg#!topic/angular/TGdrV4GsL8U --- src/Angular.js | 2 +- test/AngularSpec.js | 21 +++++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/src/Angular.js b/src/Angular.js index 2f89fbbd..512ee829 100644 --- a/src/Angular.js +++ b/src/Angular.js @@ -428,7 +428,7 @@ function HTML(html, option) { }; } -if (msie) { +if (msie < 9) { nodeName_ = function(element) { element = element.nodeName ? element : element[0]; return (element.scopeName && element.scopeName != 'HTML' ) ? uppercase(element.scopeName + ':' + element.nodeName) : element.nodeName; diff --git a/test/AngularSpec.js b/test/AngularSpec.js index 9b3357e5..444b9448 100644 --- a/test/AngularSpec.js +++ b/test/AngularSpec.js @@ -562,4 +562,25 @@ describe('angular', function(){ expect(scope.greeting).toEqual('hello world'); }); }); + + + describe('nodeName_', function() { + it('should correctly detect node name with "namespace" when xmlns is defined', function() { + var div = jqLite('