2010-02-01 22 views
2

Est-il possible de vérifier si le document n'est pas prêt et d'exécuter une fonction périodiquement dans jQuery?Existe-t-il une NotReadyFunction dans jQuery?

Simplement je voudrais réaliser quelque chose comme:

$('document').isNotReady(function(){ 

    $('#divState').text('Still Loading'); 
}); 

$('document').Ready(function(){ 

    $('#divState').text('Loaded'); 
}); 

est-il une fonction intégrée dans jQuery pour obtenir quelque chose comme ça?

Répondre

5

Vous pouvez simplement ajouter la div en haut de la page avec le texte de chargement et lorsque le document est prêt, changez le texte pour charger.

Modifier

Comme @ James a fait remarquer, il y a un problème avec votre sélecteur. Vous utilisez divState comme sélecteur de tag, ce qui ne sera pas valide. Soit vous pouvez utiliser un sélecteur d'identité ou d'un sélecteur de classe dans ce cas comme

$("#divState") ou $(".divState")

$(function(){ 
    $('#divState').text('Loaded'); 
}); 
+0

+! il suffit de penser l'inverse! –

0

Pas que je sache. Vous pouvez facilement immidate il si:

var bIsReady = false; 

$('document').Ready(function(){ 
    bIsReady = true; 
    $('divState').text('Loaded'); 
}); 

/* 
    use bIsReady somehow 
/* 

Mais je ne sais pas pourquoi vous voulez quand vous pouvez simplement le mettre dans le code HTML:

<div>Still Loading</div> 

Et puis le changer selon votre code ci-dessus lorsque le document est prêt. En outre, s'il existait une fonction NotReady, vous ne pouviez pas garantir que le DIV que vous définissiez était réellement prêt.

En outre, vous sélectionnez un élément appelé DivState. Voulez-vous dire: $('#DivState')?

1

partie HTML:

<input type="button" onclick="example_ajax_request()" value="Click Me!" /> 
<div id="example-placeholder"> 
    <p>Placeholding text</p> 
</div> 

partie jQuery:

function example_ajax_request() { 
    $('#example-placeholder').html('<p><img src="/images/ajax-loader.gif" width="220" height="19" /></p>'); 
    $('#example-placeholder').load("/examples/ajax-loaded.html"); 
} 

Source:http://www.electrictoolbox.com/load-content-jquery-ajax-loading-image/