A l'aide (FireFox)

erickup Messages postés 18 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 15 septembre 2008 - 11 mars 2005 à 15:25
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 - 12 mars 2005 à 09:45
Bonjour

je suis complètement ignare en javascript. ce que je constate c'est que
mon site fonctionne mal avec FireFox , alors qu'il fonctionne
correctement sur IE

voici le code source qui ne fonctionne pas :

//
var isIE = (-1 != navigator.appName.indexOf("Microsoft"));

function tmt_LayerScrollerStop(){
var args = tmt_LayerScrollerStop.arguments;var i=0;
for (i=0;i 0) {
dx = -cl;
} else {
if (ct + dy < 0) {
dy = -ct;
}
}
target.clip.left = cl + dx;
target.clip.top = ct + dy;
target.clip.right = cr + dx;
target.clip.bottom = cb + dy;
target.top = t - dy;
target.left = l - dx;
} else {
if (document.all) {
IEobjStr = targetIE.replace("['", ".");
target = eval(IEobjStr.replace("']", ""));
if (target.style.clip) {
var clipv = target.style.clip.split("rect(")[1].split(")")[0].split("px");
var ct = Number(clipv[0]);
var cr = Number(clipv[1]);
var cb = Number(clipv[2]);
var cl = Number(clipv[3]);
var l = target.style.pixelLeft;
var t = target.style.pixelTop;
}
if (cl + dx < 0) {
dx = -cl;
} else {
if (cr + dx > target.style.pixelWidth) {
dx = target.style.pixelWidth - cr;
}
}
if (ct + dy < 0) {
dy = -ct;
} else {
if (cb + dy > target.style.pixelHeight) {
dy = target.style.pixelHeight - cb;
}
}
ncl = cl + dx;
nct = ct + dy;
ncr = cr + dx;
ncb = cb + dy;
target.style.pixelTop = t - dy;
target.style.pixelLeft = l - dx;
eval("target.style.clip = 'rect(' + nct + ' ' + ncr + ' ' + ncb + ' ' + ncl +')'");
}
}
// BEGIN PATCH
if (null != target.tmtScrollo)
clearTimeout(target.tmtScrollo);
// END PATCH

target.tmtScrollo = setTimeout("tmt_LayerScroller("" + targetNN + "","" + targetIE + ""," + dx + "," + dy + "," + delay + ")", delay);


(il s'agit des ascenseurs qui se trouvent sur certaines pages)

pour s'en rendre compte :

http://www.domicila.fr/bureaux/page_bureau.htm



Merci d'avance à tous



Eric

4 réponses

GhislainLavoie Messages postés 289 Date d'inscription vendredi 11 mars 2005 Statut Membre Dernière intervention 3 avril 2008 3
11 mars 2005 à 17:49
Bonjour!

J'ai modifié le script pour Firefox.

Le script :


<SCRIPT language= JavaScript>
<!--

//

var isIE
=
(-1
!= navigator
.appName
.indexOf
("Microsoft"));
// tmt_LayerScrollerStop

function tmt_LayerScrollerStop
(targetNAME
) {

if
(document
.getElementById
)
tmt_div
= document
.getElementById
(targetNAME
);

else

if
(document
.layers
)
tmt_div
= document
.layers
[targetNAME
];

if
(tmt_div
&& tmt_div
.tmtScrollo
!=null)
clearTimeout
(tmt_div
.tmtScrollo
)

}

function tmt_LayerScroller
(targetNAME
, dx
, dy
, delay
)
{

if
(document
.layers
)
{
target
= document
.layers
[targetNAME
];

var cl
= target
.clip
.left;

var ct
= target
.clip
.top;

var cr
= target
.clip
.right;

var cb
= target
.clip
.bottom;

var l
= target
.left;

var t
= target
.top;

if
(cl
+ dx
>
0)
{
dx
=
-cl;

}
else
{

if
(ct
+ dy
<
0)
{
dy
=
-ct;

}

}
target
.clip
.left
= cl
+ dx;
target
.clip
.top
= ct
+ dy;
target
.clip
.right
= cr
+ dx;
target
.clip
.bottom
= cb
+ dy;
target
.top
= t
- dy;
target
.left
= l
- dx;

}
else
{

if
(document
.getElementById
)
{
target
= document
.getElementById
(targetNAME
);

if
(target
.style
.clip
)
{

var clipv
= target
.style
.clip
.replace
(/,/g
,"").split
("rect(")[1].split
(")")[0].split
("px");

var ct
= Number
(clipv
[0]);

var cr
= Number
(clipv
[1]);

var cb
= Number
(clipv
[2]);

var cl
= Number
(clipv
[3]);

var l
= target
.offsetLeft;

var t
= target
.offsetTop;

}

if
(cl
+ dx
<
0)
{
dx
=
-cl;

}
else
{

if
(cr
+ dx
> target
.offsetWidth
)
{
dx
= target
.offsetWidth
- cr;

}

}

if
(ct
+ dy
<
0)
{
dy
=
-ct;

}
else
{

if
(cb
+ dy
> target
.offsetHeight
)
{
dy
= target
.offsetHeight
- cb;

}

}
ncl
= cl
+ dx;
nct
= ct
+ dy;
ncr
= cr
+ dx;
ncb
= cb
+ dy;
target
.style
.top
= t
- dy;
target
.style
.left
= l
- dx;
eval
("target.style.clip = 'rect(' + nct + 'px ' + ncr + 'px ' + ncb + 'px ' + ncl +'px)'");

}

}
// BEGIN PATCH

if
(null
! = target
.tmtScrollo
)
clearTimeout
(target
.tmtScrollo
);
// END PATCH

target
.tmtScrollo
= setTimeout
("tmt_LayerScroller(""
+ targetNAME
+
"","
+ dx
+
","
+ dy
+
","
+ delay
+
")", delay
);

}
//-->
</SCRIPT>

Tu devras changer aussi les liens des flèches :



href =
"#"

onMouseDown=
"tmt_LayerScroller('map',0,-7,1)"

onMouseOut=
"tmt_LayerScrollerStop('map')"

onMouseOver=
"tmt_LayerScroller('map',0,-1,1)"

onMouseUp=
"tmt_LayerScrollerStop('map')">

A+, Ghislain
0
erickup Messages postés 18 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 15 septembre 2008
11 mars 2005 à 17:55
Merci c'est vraiment super sympa

est-ce que ca va également marcher pour les autres navigateurs?

Merci encore....

Je suis consultant base de données, si tu as besoin de trucs, n'hésites
pas (spécialisé dans DB2, je sais pas si ca pourra te servir un
jour.....)

Merci

Eric
0
GhislainLavoie Messages postés 289 Date d'inscription vendredi 11 mars 2005 Statut Membre Dernière intervention 3 avril 2008 3
11 mars 2005 à 18:07
Salut!

Ça demeure compatible avec EI et j'ai testé avec FIREFOX. Je n'ai pasté avec NS mais ça devrait être également compatible NS4.7+. Pas testé avec OPERA.

A+, Ghislain
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
12 mars 2005 à 09:45
quand ça passe avec firefox, ça passe avec ns et mozz (vive gecko)

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
0
Rejoignez-nous