Détection de clic dans une frame

Signaler
Messages postés
5
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
5 janvier 2004
-
Messages postés
15
Date d'inscription
lundi 1 décembre 2003
Statut
Membre
Dernière intervention
8 juin 2004
-
J'ai une page principale qui contient deux frames.
J'ai besoin à partir de la page principale de déterminer si un
clic a eu lieu dans une des frames. Sachant que le script à
déclencher au moment du clic doit se trouver dans la page
principale et que je ne peux pas modifier le source des frames qui sont des pages de sites extérieurs.
Pas simple... J'aide besoin d'aide...
Merci d'avance

6 réponses

Messages postés
453
Date d'inscription
dimanche 9 février 2003
Statut
Membre
Dernière intervention
9 juillet 2004
2
impossible pour toi de déterminer ca car les autres pages proviennent de sites extérieurs. donc ton script n'aura pas le droit de regarder leurs propriétés javascript, comme la position de la souris et le fait qu'un bouton de la souris est appuyé ou pas.

Houzéf@
Messages postés
5
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
5 janvier 2004

Bonjour,
Merci pour ta réponse.
Je vais essayé de prendre le problème autrement... Si l'internaute a cliqué sur un lien, l'adresse de la source de la frame normalement a changé. Je peux la récupérer à la fermeture de la page principale ?
Peut-être as-tu une autre idée pour savoir si une action a eu lieu ?
Merci.
Yazoo
Messages postés
453
Date d'inscription
dimanche 9 février 2003
Statut
Membre
Dernière intervention
9 juillet 2004
2
essaye de mettre un événement onClick dans la balise du frame principal :
<frame name="principal" src="page.htm" onClick="alert('test')">

et si, lorsque tu click dans le frame "principal", un message 'test' s'affiche c'est que tu peux repérerer un click effectué sur ce cadre.

Houzéf@
Messages postés
5
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
5 janvier 2004

Ca ne fonctionne pas non plus : même motif, même punition....
Messages postés
453
Date d'inscription
dimanche 9 février 2003
Statut
Membre
Dernière intervention
9 juillet 2004
2
tu peux utiliser un timer qui vérifie l'adresse de la page toutes les 500 milisecondes par exemple (une durée + petite pourrait mal ralentir l'affichage sur des ordis pas assez puissants) :

tu mets ca entre <head> et </head> :
<script language= "JavaScript">
// change ca :
le_cadre=top.cadre;
// ----------
ancienne_adresse=le_cadre.location.href;
function verifier_adresse(){
nouvelle_adresse=le_cadre.location.href;
if (nouvelle_adresse==ancienne_adresse){
alert("L'adresse du cadre a changé :\n"+nouvelle_adresse);
}
ancienne_adresse=nouvelle_adresse;
}
</script>


et dans la balise de ta page tu rajoutes :



oublies pas de changer le nom du cadre au début du script.

Houzéf@
Messages postés
15
Date d'inscription
lundi 1 décembre 2003
Statut
Membre
Dernière intervention
8 juin 2004

Bonjour,

j'aimerais savoir si la solution proposée fonctionne...

merci