Skip to content
Permalink
Browse files

Added basic support for IFrames, disabled a test which we don't take …

…into account.
  • Loading branch information
jeresig committed Jul 8, 2007
1 parent b5bf00a commit 69ef5fac9e84623c1260cf4d548c1034ac7e45a8
Showing with 28 additions and 8 deletions.
  1. +25 −2 build/runtest/env.js
  2. +3 −6 src/jquery/coreTest.js
@@ -79,6 +79,9 @@ var window = this;
this._dom = Packages.javax.xml.parsers.
DocumentBuilderFactory.newInstance()
.newDocumentBuilder().parse(file);

if ( !obj_nodes.containsKey( this._dom ) )
obj_nodes.put( this._dom, this );
};

DOMDocument.prototype = {
@@ -145,6 +148,10 @@ var window = this;
}
};

function getDocument(node){
return obj_nodes.get(node);
}

// DOM NodeList

window.DOMNodeList = function(list){
@@ -188,10 +195,10 @@ var window = this;
return makeNode( this._dom.cloneNode(deep) );
},
get ownerDocument(){
return document;
return getDocument( this._dom.ownerDocument );
},
get documentElement(){
return document.documentElement;
return makeNode( this._dom.documentElement );
},
get parentNode() {
return makeNode( this._dom.getParentNode() );
@@ -396,6 +403,22 @@ var window = this;
blur: function(){},
get elements(){
return this.getElementsByTagName("*");
},
get contentWindow(){
return this.nodeName == "IFRAME" ? {
document: this.contentDocument
} : null;
},
get contentDocument(){
if ( this.nodeName == "IFRAME" ) {
if ( !this._doc )
this._doc = new DOMDocument(
new java.io.ByteArrayInputStream((new java.lang.String(
"<html><head><title></title></head><body></body></html>"))
.getBytes("UTF8")));
return this._doc;
} else
return null;
}
});

@@ -21,17 +21,14 @@ test("$()", function() {
$('<p>\r\n</p>');
ok( true, "Check for \\r and \\n in jQuery()" );

/* // Disabled until we add this functionality in
var pass = true;
try {
var f = document.getElementById("iframe").contentDocument;
f.open();
f.write("<html><body></body></html>");
f.close();
$("<div>Testing</div>").appendTo(f.body);
$("<div>Testing</div>").appendTo(document.getElementById("iframe").contentDocument.body);
} catch(e){
pass = false;
}
ok( pass, "$('&lt;tag&gt;') needs optional document parameter to ease cross-frame DOM wrangling, see #968" );
ok( pass, "$('&lt;tag&gt;') needs optional document parameter to ease cross-frame DOM wrangling, see #968" );*/
});

test("isFunction", function() {

0 comments on commit 69ef5fa

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