Simple appel ajax semble être de blocage

Vraiment simple question. J'essaie de tester un service web Restful que je suis en train d'élaborer, et ont de ce simple appel ajax (à l'aide de jquery):

 <script type="text/javascript">  
   $(document).ready(function() { 
     var url = '/index.php/gettest/reallyLongRequest';    
     $.ajax({
       url: url,
       dataType:'text',
       success:function(data) { $('#result').html(data);},
       error:function(xhr,err,e) { alert ("Error: " + err);}
     });                
  });
 </script>

Cela fonctionne que lorsque la page se charge. Comme il est en cours d'exécution, la page bloque; c'est à dire, (je peux voir le sablier à côté du pointeur de la souris) pas d'autres actions de l'utilisateur peuvent être traitées. (Btw, cette requête get--intentionnellement--prend un temps très long pour le retour).

Pourquoi est-ce? Un(asynchrone)JAX droit? Évidemment, je suis en train de débutants erreur. Toutes les idées, s'il vous plaît?

Lorsque je tente ce en utilisant un javascript (pas de bibliothèque), il fonctionne comme prévu. Est ce que cela a quelque chose à faire avec Jquery traitement de l'xhr onreadystatechange?

Merci pour la recherche.

EDIT: plusieurs personnes ont suggéré la création d'async: true, qui, comme il arrive, c'est la valeur par défaut de jquery, et en tant que telle n'a pas d'effet.

EDIT: Comme mentionné précédemment, si j'ai utiliser du javascript et de commencer ce avec une minuterie, par exemple, window.setInterval(function() { startLongPoll(); }, 5000)
Il met à jour comme prévu, sans apparaître à bloc. Des idées?

  • Je n'ai aucune idée si cela est lié, mais avez-vous essayé sur un autre navigateur?
  • Il se produit dans tous les navigateurs.
  • Comme dirait ma précédente déclaration était fausse; après une inspection plus poussée, il ne se produit que dans google chrome. Des idées?
InformationsquelleAutor meta.matt | 2011-03-25