jQuery.holdReady()

jQuery.holdReady( hold )Returns: undefinedversion deprecated: 3.2

Description: Holds or releases the execution of jQuery's ready event.

Note: This API has been deprecated in jQuery 3.2. Instead of relying on this global switch, it's better to put explicitly wait for required code. If you need to wait both for the ready state & for a custom promise, use the following pattern:

$.when( $.ready, customPromise ) .then( function() { // main code } ) .catch( function( error ) { // handle errors } )

The $.holdReady() method allows the caller to delay jQuery's ready event. This advanced feature would typically be used by dynamic script loaders that want to load additional JavaScript such as jQuery plugins before allowing the ready event to occur, even though the DOM may be ready. This method must be called early in the document, such as in the <head> immediately after the jQuery script tag. Calling this method after the ready event has already fired will have no effect.

To delay the ready event, first call $.holdReady( true ). When the ready event should be released to execute, call $.holdReady( false ). Note that multiple holds can be put on the ready event, one for each $.holdReady( true ) call. The ready event will not actually fire until all holds have been released with a corresponding number of $.holdReady( false ) calls and the normal document ready conditions are met. (See ready for more information.)

Example:

Delay the ready event until a custom plugin has loaded.

$.holdReady( true );
$.getScript( "myplugin.js", function() {
  $.holdReady( false );
});

© The jQuery Foundation and other contributors
Licensed under the MIT License.
https://api.jquery.com/jQuery.holdReady