Maison  >  Article  >  interface Web  >  Comment détecter les modifications apportées à la source d'un iFrame lorsque vous ne pouvez pas contrôler son contenu ?

Comment détecter les modifications apportées à la source d'un iFrame lorsque vous ne pouvez pas contrôler son contenu ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-04 11:31:29167parcourir

How Can You Detect Changes to an iFrame's Source When You Cannot Control Its Content?

Détection des modifications de source dans les iFrames sur la page parent

Lorsque vous travaillez avec des iFrames dont le contenu est que vous ne pouvez pas contrôler, la détection des modifications apportées à leur source devient difficile . Cet article explore les moyens de résoudre ce problème.

Exploiter l'événement onLoad

Une solution consiste à utiliser l'événement onLoad. En attribuant un écouteur d'événement à cet événement, vous pouvez exécuter une fonction personnalisée chaque fois que la source de l'iFrame change. Un exemple de ceci est présenté ci-dessous :

<code class="html"><iframe src="http://www.google.com/" onLoad="alert('Test');"></iframe></code>

Ce code afficherait un message d'alerte à chaque fois que l'emplacement de l'iFrame change. Cependant, il convient de noter que cette méthode peut ne pas être entièrement compatible avec les anciens navigateurs comme IE5 et les premières versions d'Opera.

Accès à l'emplacement avec contentWindow.location

Si l'iFrame affiche une page dans le même domaine que le parent, accéder à son emplacement devient possible en utilisant contentWindow.location. Voici un exemple :

<code class="html"><iframe src="/test.html" onLoad="alert(this.contentWindow.location);"></iframe></code>

Ce code afficherait une alerte avec l'emplacement de la page dans l'iFrame. N'oubliez pas de prendre en compte les restrictions inter-domaines et la compatibilité des navigateurs lors de la mise en œuvre de cette méthode.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn