Core: Do not run window.onready when ready

Fixes #14802
(cherry picked from commit 2df1aad6a1)
This commit is contained in:
Dave Methvin 2014-03-03 22:04:23 -05:00
parent 4adc5b2217
commit 80e3dfa6ba
3 changed files with 34 additions and 2 deletions

View File

@ -56,8 +56,9 @@ jQuery.extend({
readyList.resolveWith( document, [ jQuery ] );
// Trigger any bound ready events
if ( jQuery.fn.trigger ) {
jQuery( document ).trigger("ready").off("ready");
if ( jQuery.fn.triggerHandler ) {
jQuery( document ).triggerHandler( "ready" );
jQuery( document ).off( "ready" );
}
}
});

View File

@ -0,0 +1,24 @@
<!doctype html>
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8"/>
<title>alias-masked DOM properties (#14074)</title>
<script>
var error = false;
window.onready = function() { error = "Called window.onready"; };
</script>
<script src="../../jquery.js"></script>
</head>
<body>
<form>
<input type="text" id="nodeName"/>
</form>
<script>
jQuery(function() {
setTimeout( function() {
window.parent.iframeCallback( error );
});
});
</script>
</body>
</html>

View File

@ -1492,3 +1492,10 @@ testIframeWithCallback( "Tolerating alias-masked DOM properties (#14074)", "core
deepEqual( errors, [], "jQuery loaded" );
}
);
testIframeWithCallback( "Don't call window.onready (#14802)", "core/onready.html",
function( error ) {
expect( 1 );
equal( error, false, "no call to user-defined onready" );
}
);