Bon... Cela ne va toujours pas mieux :
Voici le début du html dans lequel le div 'DSCL' doit se déplacer onload grâce au JavaScript Layer_MoveXY:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="fr-fr">
<head>
<meta http-equiv="content-script-type" content="text/javascript; charset=utf-8">
<title>Index</title>
<script type="text/javascript" src="../JavaScripts/MenuLightsMngr.js"></script>
<script type="text/javascript" src="../JavaScripts/Layer_HideShow.js"></script>
<script type="text/javascript" src="../JavaScripts/Layer_MoveXY.js"></script>
</head>
<body background="../Images/Decorum/FondePage.jpg"
dir="ltr"
onload="LoadMenuImages(7,'../Images/MenuIcons/Main',0,'');Layer_MoveXY('DSCL',5,5,13,6,30)">
<IMG src="../Images/Decorum/TopTitleBanner.gif" alt=""
style="position: absolute; top: 5px; left: 5px;" width="770" height="111">
<DIV id="DSCL" style="position: absolute; top: 500px; left: 700px; z-index: 30;">
<IMG style="width: 114px; height: 114px"
src="../Images/Decorum/AlternateTitleOrangeBall.gif" alt="">
</DIV>
Et voici le JavaScript en question :
function Layer_MoveXY(layerId,x_dest,y_dest,incX,incY,speed){
var x_dist, y_dist, funcstr;
if(document.getElementById){
x_dist=x_dest-parseInt(document.getElementById(layerId).style.left);
y_dist=y_dest-parseInt(document.getElementById(layerId).style.top);
if(Math.abs(x_dist)<incX)
x_dist=0;
else
x_dist=x_dist-(x_dist/Math.abs(x_dist))*incX;
document.getElementById(layerId).style.left=x_dest-x_dist;
if(Math.abs(y_dist)<incY)
y_dist=0;
else
y_dist=y_dist-(y_dist/Math.abs(y_dist))*incY;
document.getElementById(layerId).style.top=y_dest-y_dist;
if(!(x_dist==0 && y_dist==0)){
funcstr="Layer_MoveXY('"+layerId+"',"+x_dest+","+y_dest+","+incX+","+incY+","+speed+")";
setTimeout(funcstr,speed);}}}
Donc, ceci fonctionne très bien dès lors que j'omets la définition DOCTYPE.
(celle-ci ou une autre) Dès que j'intègre la déclaration... plus rien ne bouge.
Quel est donc ce diable de lien entre le DTD et mon JavaScript ?
Nota : Les autres scripts utilisés dans la page html fonctionnent très bien DOCTYPE ou pas DOCTYPE.
Modifié par aCOSwt (09 Oct 2006 - 18:17)