2010-12-07 28 views
2

Maintenant, je suis en train d'ouvrir une série d'URL avec window.openComment envoyer des requêtes HTTP sans ouvrir les fenêtres en Javascript?

for(i=0;i<10;i++) 
{ 
    window.open("myapp://arg1/arg2/arg3/number_"+i); 
} 

Il fonctionne très bien, sauf surgissant dix windows.And Je me demande s'il y a une façon de faire ce travail avec des fenêtres non représentées? L'aide serait appréciée!

+2

Que voulez-vous dire, _ "sans ouvrir de fenêtres?" _ –

+0

Avez-vous besoin d'afficher le contenu, si vous obtenez un HTTP obtenir seulement, pourquoi ne pas faire un appel AJAX, ou jquery obtenir ie :: '$. get ('ajax/test.html', fonction (données) { $ ('. result') .html (données); alert ('Chargement a été effectué'); }); ' –

+0

@Matt Ball, Je ne veux pas ouvrir un nouvel onglet de navigateur Web. – Young

Répondre

5

Si tout ce que vous voulez faire est d'envoyer ces demandes et vous ne pouvez vous soucient pas de leur réponse, de créer une image:

for(i=0;i<10;i++) 
{ 
    new Image().src = "myapp://arg1/arg2/arg3/number_"+i; 
} 

AFAIR, tous les navigateurs que j'ai essayé que dans (n'a pas testé IE) téléchargé la ressource et ne m'a pas obligé à réellement afficher l'image ou l'ajouter au DOM ou quoi que ce soit. C'est bon pour la journalisation et la lecture anticipée, mais pas grand-chose d'autre.

+0

De cette façon est probablement viable. Merci. – Young

1

Existe-t-il un moyen de le faire sans afficher de nouvelles fenêtres?

Bien sûr:

for(i=0;i<10;i++) 
{ 
    // window.open("myapp://arg1/arg2/arg3/number_"+i); 
} 

Sérieusement, vous devez expliquer ce que vous attendez de se produire - dans le but de window.open est d'ouvrir de nouvelles fenêtres (pop-up), et si c'est pas ce que vous voulez alors vous avez besoin d'une autre fonction. Après avoir lu votre commentaire, il semble que ce que vous souhaitez faire est d'envoyer une requête HTTP à cette page (plutôt que d'ouvrir cette page dans une nouvelle fenêtre). La manière normale de faire cela est d'utiliser l'objet XMLHttpRequest pour envoyer la demande.

Si vous utilisez une structure/bibliothèque JavaScript (telle que jQuery), vous trouverez probablement que cet objet est enveloppé dans des fonctions plus faciles à utiliser.