Je suis en train de faire un petit site. Vu que je suis sous Vista béta 2, je n'ai que IE7 qui est lui aussi en béta pour tester.
Donc quand j'ai eu mon problème au début, j'ai remis ça sur le dos de la béta.
Mais depuis que j'ai dwl Mozilla, et que j'ai le même problème, là je commence à sècher sérieusement...
Voici ma page :
<?xml version="1.0" encoding="utf-8"?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head xmlns="">
<title>Accueil</title>
<script type="text/javascript" src="xsl/js/debug_links.js" />
</head>
<body>
<form action="." method="post">
<div style="border: solid 1px black; float: left; height: 100%" xmlns="">
<ul>
<li><a href="?page=P_HOME">Acceuil</a><br /><i><font size="-2">Page d'acceuil</font></i></li>
<li><a href="?page=P_HELP">Aide</a><br /><i><font size="-2">Besoin d'aide ?</font></i></li>
<li><a href="?page=P_ARTICLE_LIST">Articles</a><br /><i><font size="-2">Voir les articles</font></i></li>
</ul>
login: <input type="text" name="chp:user_nickname" /><br />
pass: <input type="password" name="chp:user_password" /><br />
<input type="submit" />
</div>
<p xmlns="">
<font size="-1">
MagicSite beta 1 - MagicBuzz 2006 © - Tous droits réservés 2006
</font>
</p>
</form>
</body>
</html>
|
On notera le :
<script type="text/javascript" src="xsl/js/debug_links.js" /> |
Il n'est pas formé comme d'habitude, avec une baliser fermante, car la page est en fait générée par du XSL.
Sous IE7 : rien ne s'affiche.
Sous FF, ça marche (étrange, voyez la suite). Le JS qui est inclut (qui contient un "window.onload" ) s'éxécute bien.
Une fois que j'ai chargé avec FF, je rempli le formulaire, et je recharge la page.
<?xml version="1.0" encoding="utf-8"?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head xmlns="">
<title>Accueil</title>
<script type="text/javascript" src="xsl/js/debug_links.js" />
</head>
<body>
<form action="." method="post">
<div style="border: solid 1px black; float: left; height: 100%" xmlns="">
<ul>
<li><a href="?page=P_HOME">Acceuil</a><br /><i><font size="-2">Page d'acceuil</font></i></li>
<li><a href="?page=P_HELP">Aide</a><br /><i><font size="-2">Besoin d'aide ?</font></i></li>
<li><a href="?page=P_ARTICLE_LIST">Articles</a><br /><i><font size="-2">Voir les articles</font></i></li>
</ul>
Bonjour MagicBuzz
<input type="hidden" name="chp:user_id" value="1" />
<input type="hidden" name="chp:user_nickname" value="MagicBuzz" />
<input type="hidden" name="chp:user_password" value="lepassword" />
<script type="text/javascript" language="javascript">
alert("toto" );
</script>
</div>
<p xmlns="">
<font size="-1">
MagicSite beta 1 - MagicBuzz 2006 © - Tous droits réservés 2006
</font>
</p>
</form>
</body>
</html>
|
Quasiment la même page quoi.
Avec IE, vu la page précédente, je ne peux pas tester.
Sous FF... Là c'est sport : seul "MagicSite beta 1 - MagicBuzz 2006 © - Tous droits réservés 2006" s'affiche ! Et le js (alert) ne se lance pas. Pour l'autre JS, je ne peux pas vérifier, puisqu'il impacte les liens qui disparraissent.
Si dans la première page, je rajoute un block JS de ce style dans le body, ça marche sous IE7 et les JS se lancent :
<script type="text/javascript" language="javascript">
alert("toto" );
</script>
|
Si je vire simpement toute trace de JS, ça marche parfaitement dans les deux navigateur.
Dans tous les cas, sous les deux navigateurs, je n'ai pas d'erreur JS.
Et c'est pas le JS inclu qui efface la page, voyez vous-même :
Code :
- // This file add the "debug" directive to all links on the page if it is set on the current url
- // In other words, it extends the debug feature to the whole site
- function UpdateLinksWithDebugFlag()
- {
- if (window.location.href.indexOf("?" ) > -1)
- {
- var debugEnabled = false;
- var params = window.location.href.substr(window.location.href.indexOf("?" ) + 1).split("&" );
- for (var i = 0; i < params.length; i++)
- {
- if (params[i] == "debug=1" )
- {
- debugEnabled = true;
- break;
- }
- }
- if (debugEnabled)
- {
- for (var i = 0; i < document.links.length; i++)
- {
- if (document.links[i].href.indexOf("?" ) > -1)
- {
- document.links[i].href += "&debug=1";
- }
- else
- {
- document.links[i].href += "?debug=1";
- }
- }
- for (var i = 0; i < document.forms.length; i++)
- {
- if (document.forms[i].action.indexOf("?" ) > -1)
- {
- document.forms[i].action += "&debug=1";
- }
- else
- {
- document.forms[i].action += "?debug=1";
- }
- }
- }
- }
- }
- window.onload = UpdateLinksWithDebugFlag;
|
Une idée ? Parceque là, je trouve que c'est un comportement plus qu'étrange... Et je suis complètement coincé !
Message édité par Arjuna le 08-07-2006 à 15:12:42