Changer src de l'iframe à l'intérieur de l'iframe
Je reçois ce problème en Chrome (en Exécutant les fichiers en local) lorsque je tente de changer la src de l'Iframe à l'intérieur de l'iframe, j'obtiens ce Message d'Erreur
Erreur: Uncaught SecurityError: impossible de lire le 'contentDocument la propriété de "HTMLIFrameElement': Bloqué un cadre dont l'origine est "null" d'accéder à un cadre dont l'origine est "null". Les protocoles, les domaines et les ports doivent correspondre.
Ce que le code que j'utilise pour récupérer l'iframe
iframe = $("iframe").contents().find('iframe');
iframe.attr("src", url);`
Je n'ai pas ce problème quand j'ai télécharger les fichiers sur le serveur. Mais si j'ouvre localement, je reçois le message d'erreur.
Il fonctionne bien sous firefox et safari.
Comment puis-je faire cela dans chrome et d'autres navigateurs ?
Vous êtes en cours d'exécution dans les questions relatives à la Même Origine. Pour tester en local, assurez-vous de ne pas coder en dur des noms de domaine.
C'est un fonctionnalité dans google Chrome.
Pas certain, 2
iframes
? Ou 1 document avec 1 iframe
? Merci pour le partage.Veuillez voir le post. Merci pour le partage. Espérons que cette aide
OriginalL'auteur mah.cr | 2014-03-25
Vous devez vous connecter pour publier un commentaire.
Fonctionnalités de sécurité intégrées à tous les navigateurs de s'assurer que Javascript ne peut pas interagir avec les objets dans d'autres fenêtres et/ou des images si les Fenêtres ou les images chargées à partir d'un autre site. Ceci est communément connu comme le "même origine". Si quelque chose a été chargé à partir d'un autre site est déterminé par le nom d'hôte de la partie de l'URL. Si, par exemple, le cadre extérieur est chargé de
http://yoursite.com
et le cadre intérieur est chargé dehttp://example.com
Javascript s'exécutant dans le champ d'application du cadre extérieur ne sera pas en mesure d'accéder ou de modifier les propriétés ou les objets dans le champ d'application de la bordure intérieure.Dans ce cas l'erreur indique que votre Javascript qui s'exécute dans le contexte du cadre extérieur, est refusé d'accéder à un objet (contentDocument) dont la portée est la bordure intérieure. Caché quelque part dans le jQuery que vous essayez d'utiliser sera implicite de l'accès à l'image du document élément (accès par la contentDocument propriété de l'iframe).
Vous pouvez peut-être contourner ce problème en détruisant l'iframe et re-créer une iframe avec les crs.
OriginalL'auteur thomasrutter