Esto no está documentado, no creo, pero si nos fijamos en el código jQuery para $(document).ready
:
// If the DOM is already ready
if (jQuery.isReady) {
// Execute the function immediately
fn.call(document, jQuery);
} // ...
Así, por una manera que puede cambiar, puede utilizar $.isReady
o jQuery.isReady
.
Una mejor manera sería usar $(document).ready
en línea. p.ej.:
function myClickHandler(event) {
// do stuff
$(document).ready(function() {
// Do this immediately if DOM is loaded, or once it's loaded otherwise.
}
}
Básicamente, esto utiliza la función de listo como protección. En lugar de una instrucción if, usa la función lista. Por supuesto, la función listada tiene el comportamiento que ejecutará una vez que se carga el DOM. Si su comportamiento solo quiere que suceda algo si está cargado, pero nunca lo hace si el DOM no está cargado todavía, entonces usar la bandera de arriba o establecer la suya es la mejor manera de hacerlo. El establecimiento de su propia:
$(document).ready(function() {
window.domIsReady = true;
}
if (window.domIsReady) {
// do stuff
}
La creación de su propia es probablemente mejor, ya que jQuery.isReady
no parece ser documentada, y por lo tanto probablemente no es compatible y puede ser cambiado en cualquier momento.
Esta es una de las primeras lecciones en el tutorial jQuery promedio. ¿Por ejemplo, leíste uno? Puede encontrar algunos [aquí] (http://docs.jquery.com/Tutorials). El [tutorial principal] (http://docs.jquery.com/Tutorials:How_jQuery_Works) maneja esto ya en el capítulo 2. – BalusC
Sí, conozco la función Listo, pero ¿cómo verificar si DOM está Listo? – Lalit
@Lalit: el DOM es '$ (documento)' en jQuery. – BalusC