Envoyé par : Sergio
Date : 18/05/2006 10:14
Bonjour,
Je reviens sur un comportement bizarre à l'affichage d'un iframe dans un tabbox.
(J'ai essayé avec <browser> : le comportement est le même)
Au chargement de la page, je passe bien dans la fonction init().
Quand je clique sur le bouton 'Afficher iframe dans un tabbox' l'iframe devient bien visible mais la fonction init() est appelée une deuxième fois. Pourquoi ?
Quelque chose me dit que ce doit être normal... et je suis preneur de l'explication.
Néanmoins je voudrais, justement, que cette fonction ne soit pas appelée une deuxième fois !
Que faire ?
Merci de vos conseils.
<?xml version="1.0" encoding="ISO-8859-15"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css" ?> <window id = "idFenetre" title = "Test" xmlns = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" onload = "init();" > <script type="application/x-javascript"> var passage = 0; function init() { alert('Passage n°' + ++passage + ' dans la fonction init()'); } function action_sur(id) { switch (id) { case "f0_ok" : cacher("f0"); voir("f2"); break; } } function voir(id) { document.getElementById(id).removeAttribute("hidden"); } function cacher(id) { document.getElementById(id).setAttribute("hidden", "true"); } </script> <vbox id="f0" flex="1"> <hbox style="background-color:#FFFFE0;"><description>Ecran initial</description> <button label="Afficher iframe dans un tabbox" id="f0_ok" onclick="action_sur(this.id);" /> </hbox> </vbox> <hbox id="f2" flex="1" hidden="true"> <vbox flex="1"> <description>Tabbox avec iframe</description> <tabbox id="f2_onglets" flex="1"> <tabs> <tab label="Iframe" /> </tabs> <tabpanels flex="1"> <tabpanel id="f2_1"> <iframe flex="1" src="about:blank" /> </tabpanel> </tabpanels> </tabbox> </vbox> </hbox> </window>
Envoyé par : Sergio
Date : 18/05/2006 15:16
Finalement je viens de trouver la réponse sur :
http://xulplanet.com/forum/viewtopic.php(..)
Il faut mettre onload="if (event.target == document) init();" au lieu de onload = "init();"
Envoyé par : laurentj
Date : 22/05/2006 12:59
Tu aurais lu la faq du wiki...
Envoyé par : Sergio
Date : 23/05/2006 12:57
Désolé, mais je ne trouve pas...
Envoyé par : laurentj
Date : 23/05/2006 13:37
tu cliques sur wiki en haut. Ensuite à gauche, dans le menu principal, il y a un item "FAQ"... j'ai du mal à voir comment faire plus "voyant" ;-)
Envoyé par : Sergio
Date : 23/05/2006 14:53
D'accord je ne suis pas doué... mais j'avais quand même trouvé la FAQ
Mais ensuite sur cette page je ne vois rien en rapport avec ma question : c'est cela que je voulais dire.
Envoyé par : wako
Date : 23/05/2006 15:15
humm
j'ai mis un gestionnaire d'évènement onload sur ma fenêtre, mais celui-ci est executé plusieurs fois, pourquoi ? c'est un bug (ou une feature ?) connu de Firefox, quand vous avez des iframes dans votre page, l'évènement load de l'iframe se propageant dans la fenêtre mère.
4 ou 5 eme ligne
wako
Envoyé par : Sergio
Date : 23/05/2006 15:27
Vu ! Si, si !
N'empêche que c'est un signalement, mais que la solution n'y figure pas.
Ce serait peut-être bien de la rajouter ?
On peut contourner ce problème en mettant :
onload="if (event.target == document) init();" au lieu de onload = "init();"
http://xulplanet.com/forum/viewtopic.php(..)
Envoyé par : laurentj
Date : 23/05/2006 15:41
qu'attend tu pour le faire ?
Envoyé par : Christophe Charron
Date : 29/05/2006 23:10
Bonsoir, vu ici http://www.xulplanet.com/references/elemref/ref_iframe.html
et la ligne
<iframe flex="1" src="about:blank" />
devient
<iframe flex="1" onload="event.stopPropagation();" src="about:blank" />
Envoyé par : souqueta
Date : 31/05/2006 11:06
A l'affichage de mon iframe , mon curseur est constamment en position "wait". Malgré la similitude de mon problème avec le topic, je ne parviens pas à le résoudre. L'usage de l'attribut wait-cursor à false n'y fait rien du tout.
<iframe id="textconsole" height="250" width="1024" wait-cursor="false"/>
Merci du coup de pouce :)
Envoyé par : laurentj
Date : 31/05/2006 11:20
enleve l'attribut plutot que de le mettre à false. ça marchera peut etre.
Envoyé par : souqueta
Date : 31/05/2006 11:27
Malheuresement non.
Il n'est plus possible de poster des messages dans ce forum.
Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.
Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™
sont des marques de la fondation Mozilla.