J'ai un iframe et j'ai besoin de capturer l'attribut SRC dans une variable JavaScript. Voici comment mon iframe ressemble à je suis capable d'obtenir le nom via fenêtre.name mais pas l'attribut SRC. Aucune idée? P> p>
4 Réponses :
Vous recherchez document.location code>, comme tout autre document.
Chaque image obtient son propre document code>. P>
var src = top.document.getElementById("iframe_module_46081").src;
If you don't want to use jquery selector.
Merci tout sauf que je viens de voir que le domaine du top iframe est différent, j'ai donc des problèmes de crossomain.
Si autorisé par des contrôles croisés, essayez fenêtre.frameElement.src code>. Sinon, vous n'avez pas de chance et laissé seul avec emplacement.href code>. P>
Pourquoi le emplacement.href code> Choix malchanceux?
Parce que l'iframe aurait pu naviguer loin de son emplacement d'origine
window.frameLeElement est null lorsque le domaine croisé (je teste sur chrome)
Quant à moi pour l'instant, j'ai fini par sauvegarder l'emplacement initial iframe.href à l'objet Window. (fenêtre.project_name_first_url_loaded = window.location.href) quelque part dans l'application Bootstrapping avant que l'application puisse modifier son URL. P>
L'autre endroit où nous pourrions le prendre, c'est l'API d'histoire, mais il n'a aucune information sur l'URL initiale avant de revenir à l'état initial, je crois. P>
top.document.getelementsbyname (window.name) [0] .src code> devrait le faire@GGG: Cela ne fonctionnera pas de cross-domain.
@Slaks Rien ne fonctionnera croix domain = / sauf
document.location code>, évidemment, mais j'ai supposé que cela ne fonctionnait pas pour lui pour une raison quelconque.Le script est-il dans le document de l'iframe ou dans le même document que l'IFrame?