Skip to content

Commit

Permalink
Merge branch 'master' of github.com:jquery/jquery into jquery-master
Browse files Browse the repository at this point in the history
  • Loading branch information
csnover committed Jan 17, 2011
2 parents e78d3a7 + 220a0ce commit 0cbe4cb
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 24 deletions.
2 changes: 1 addition & 1 deletion src/core.js
Expand Up @@ -583,7 +583,7 @@ jQuery.extend({


script.type = "text/javascript"; script.type = "text/javascript";


if ( jQuery.support.scriptEval ) { if ( jQuery.support.scriptEval() ) {
script.appendChild( document.createTextNode( data ) ); script.appendChild( document.createTextNode( data ) );
} else { } else {
script.text = data; script.text = data;
Expand Down
56 changes: 33 additions & 23 deletions src/support.js
Expand Up @@ -4,10 +4,7 @@


jQuery.support = {}; jQuery.support = {};


var root = document.documentElement, var div = document.createElement("div");
script = document.createElement("script"),
div = document.createElement("div"),
id = "script" + jQuery.now();


div.style.display = "none"; div.style.display = "none";
div.innerHTML = " <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>"; div.innerHTML = " <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
Expand Down Expand Up @@ -64,7 +61,7 @@
deleteExpando: true, deleteExpando: true,
optDisabled: false, optDisabled: false,
checkClone: false, checkClone: false,
scriptEval: false, _scriptEval: null,
noCloneEvent: true, noCloneEvent: true,
boxModel: null, boxModel: null,
inlineBlockNeedsLayout: false, inlineBlockNeedsLayout: false,
Expand All @@ -77,32 +74,45 @@
select.disabled = true; select.disabled = true;
jQuery.support.optDisabled = !opt.disabled; jQuery.support.optDisabled = !opt.disabled;


script.type = "text/javascript"; jQuery.support.scriptEval = function() {
try { if ( jQuery.support._scriptEval === null) {
script.appendChild( document.createTextNode( "window." + id + "=1;" ) ); var root = document.documentElement,
} catch(e) {} script = document.createElement("script"),

id = "script" + jQuery.now();
root.insertBefore( script, root.firstChild );

script.type = "text/javascript";
// Make sure that the execution of code works by injecting a script try {
// tag with appendChild/createTextNode script.appendChild( document.createTextNode( "window." + id + "=1;" ) );
// (IE doesn't support this, fails, and uses .text instead) } catch(e) {}
if ( window[ id ] ) {
jQuery.support.scriptEval = true; root.insertBefore( script, root.firstChild );
delete window[ id ];
} // Make sure that the execution of code works by injecting a script
// tag with appendChild/createTextNode
// (IE doesn't support this, fails, and uses .text instead)
if ( window[ id ] ) {
jQuery.support._scriptEval = true;
delete window[ id ];
} else {
jQuery.support._scriptEval = false;
}

root.removeChild( script );
// release memory in IE
root = script = id = null;
}
return jQuery.support._scriptEval;
};


// Test to see if it's possible to delete an expando from an element // Test to see if it's possible to delete an expando from an element
// Fails in Internet Explorer // Fails in Internet Explorer
try { try {
delete script.test; delete div.test;


} catch(e) { } catch(e) {
jQuery.support.deleteExpando = false; jQuery.support.deleteExpando = false;
} }


root.removeChild( script );

if ( div.attachEvent && div.fireEvent ) { if ( div.attachEvent && div.fireEvent ) {
div.attachEvent("onclick", function click() { div.attachEvent("onclick", function click() {
// Cloning a node shouldn't copy over any // Cloning a node shouldn't copy over any
Expand Down Expand Up @@ -191,6 +201,6 @@
jQuery.support.changeBubbles = eventSupported("change"); jQuery.support.changeBubbles = eventSupported("change");


// release memory in IE // release memory in IE
root = script = div = all = a = null; div = all = a = null;
})(); })();
})( jQuery ); })( jQuery );

0 comments on commit 0cbe4cb

Please sign in to comment.