iframe sans un attribut src
Je voudrais créer un <iframe>
sur la page, mais ensuite ajouter le src
plus tard. Si je fais une iframe sans src
attribut, puis il charge la page en cours dans certains navigateurs. Quelle est la bonne valeur à définir pour le src
alors qu'il vient de charge un vide iframe?
Les réponses que j'ai vu sont:
about:blank
javascript:false
javascript:void(0)
javascript:"";
- url d'une page vierge
Est-il un gagnant clair? Si non, quels sont les inconvénients?
J'aimerais ne pas avoir de contenu mixte pour des url HTTPS, ni aucune arrière-bouton, l'histoire, ou de recharger étrangeté dans tous les navigateurs à partir de IE6 à partir.
- double possible de iFrame src autre chose que javascript:faux, mais même effet
- Vous pouvez créer l'iframe pour le moment, vous avez la src disponibles, pour éviter ce problème. Cela fonctionnerait-il?
- Cette question a été poser pour la plus jolie façon d'écrire "javascript:false". Je n'aime pas la laideur de ligne, je veux la fonctionnalité. Et l'on a accepté la réponse a été une url vers une page blanche, qui paie un HTTP aller-retour qui semble pire que d'être en mesure de l'éviter.
- non, c'est une longue histoire, mais que j'ai besoin de l'iframe sur la page, l'url sera remplie plus tard.
Vous devez vous connecter pour publier un commentaire.
Approche Standard lors de la création d'un "vide" de l'iframe (comme un iframe cale, par exemple), est de définir la src comme
javascript:false;
. C'est la méthode utilisée par la plupart des bibliothèques JavaScript qui créent iframe cales pour vous (par exemple YUI Superposition).Content-Security-Policy
en-tête. Par conséquent, veuillez ne pas l'utiliser dans les scripts que vous vous attendez à d'autres parties à inclure dans leurs sites.javascript:false
est signalé comme un dangereux script src directive lors de l'utilisation de Facebook SDK. (Je crois queabout:blank
peut-être la meilleure méthode à utiliser.)Ne sais pas si tous les navigateurs prennent en charge "about:blank", alors j'aimerais juste aller avec votre propre page blanche puis.
Une autre idée: Pourquoi ne pas ajouter l'ensemble de l'iframe à l'aide de javascript au lieu de simplement la src?
Re votre commentaire précisant que vous avez l'intention d'utiliser l'iframe en tant que cible pour la soumission d'un formulaire:
Je voudrais utiliser un document vide sur le serveur qui envoie en retour un
204 no content
.Il évite
javascript:
protocoleC'est également valide en HTML.
De sorte que si elle génère une requête supplémentaire? Définir la mise en cache des en-têtes de droit, et il n'y aura qu'une seule demande de chaque client.
about:blank
qui fonctionne dans la plupart des navigateursonload
événement à feu sur l'iframe dans certains navigateurs, de sorte que cela peut ne pas être la meilleure approche si quelqu'un est à la recherche de crochet dans cet événement.Ce sujet
javascript:
, vous ne pouvez pas compter sur tous client de les interpréter correctementjavascript:false
:IE10 et FF (vérifié dans v23 dans Linux) affiche "false" en tant que contenu.
javascript:void(0)
&&javascript:;
:IE affiche 'ne peut pas afficher la page' erreur dans l'iframe. En outre, lors de la src à partir d'une url valide pour
javascript:void(0)
, la page ne sera pas obtenir de vide.about:blank
:Fonctionne dans tous les navigateurs, mais IE 9 envoie une demande au serveur avec chemin d'accès "null". Toujours le meilleur pari de l'OMI
Caisse http://jsfiddle.net/eybDj/1
La caisse http://jsfiddle.net/sv_in/gRU3V/ pour voir comment iframe src changements sur la dynamique de la mise à jour avec JS
javascript:false
fonctionne dans les navigateurs modernes.Ce que j'ai vu, c'est que ce seul "échec" lors de la muette araignées essayez de charger
javascript:false
comme une page.Solution: Bloquer les muets araignées.
Content-Security-Policy
en-tête. Par conséquent, veuillez ne pas l'utiliser dans les scripts que vous vous attendez à d'autres parties à inclure dans leurs sites.Comme je l'ai posté dans cette question: Est vide iframe src valide?, il semble acceptable de laisser simplement les
src=
attribut complètement.De l'OMI: si vous ne mettez pas de la src, votre page ne sera pas valider. Mais du sujet.
Si vous mettez une src="", votre serveur se connecter à de nombreuses erreurs 404.
Rien n'est vraiment mauvais comme dans les "nuisibles". Mais alors, est-il en fait pas mal d'utiliser une iframe en lui-même?
°-
Oui, je sais, je fais revivre un vieux thread. Me poursuivre en justice. Je suis intéressé par la réponse.
Je ne comprends pas pourquoi avoir la gâchette étant la soumission d'un formulaire s'oppose à la création dynamique de l'IFrame. N'est-ce pas exactement ce que vous voulez?
src
sera connu (voir le commentaire de l'histoire de la question elle-même).