Skip to content
Permalink
Browse files

Fixed #1419 where IE failed with .text() on an XML node. This is part…

… of a series of tickets including #1264 where the context of the DOM manipulation was a problem in xml and iframe documents.
  • Loading branch information
davids549 committed Dec 5, 2007
1 parent 74a132d commit 1be558203961c43043d6e9de3341e8bb9c3dcbf3
Showing with 17 additions and 4 deletions.
  1. +2 −1 src/core.js
  2. +15 −3 test/unit/core.js
@@ -917,7 +917,8 @@ jQuery.extend({
clean: function( elems, context ) {
var ret = [];
context = context || document;
if (!context.createElement)
// !context.createElement fails in IE with an error but returns typeof 'object'
if (typeof context.createElement == 'undefined')
context = context.ownerDocument || context[0] && context[0].ownerDocument || document;

jQuery.each(elems, function(i, elem){
@@ -173,7 +173,19 @@ test("$('html', context)", function() {

var $div = $("<div/>");
var $span = $("<span/>", $div);
equals($span.length, 1, "Verify a span created with a div context works");
equals($span.length, 1, "Verify a span created with a div context works, #1763");
});

test("$(selector, xml).text(str) - Loaded via XML document", function() {
expect(2);
stop();
$.get('data/dashboard.xml', function(xml) {
// tests for #1419 where IE was a problem
equals( $("tab:first", xml).text(), "blabla", "Verify initial text correct" );
$("tab:first", xml).text("newtext");
equals( $("tab:first", xml).text(), "newtext", "Verify new text correct" );
start();
});
});

test("length", function() {
@@ -355,8 +367,8 @@ if ( !isLocal ) {
$('tab', xml).each(function() {
titles.push($(this).attr('title'));
});
ok( titles[0] == 'Location', 'attr() in XML context: Check first title' );
ok( titles[1] == 'Users', 'attr() in XML context: Check second title' );
equals( titles[0], 'Location', 'attr() in XML context: Check first title' );
equals( titles[1], 'Users', 'attr() in XML context: Check second title' );
start();
});
});

0 comments on commit 1be5582

Please sign in to comment.
You can’t perform that action at this time.