...

View Full Version : 2nd script works but 1st does not



dlg0351
12-23-2005, 02:33 AM
The 2nd script in the <body></body> works, but the one in the <head></head> which performs onLoad does not work....why?




<html>
<head>
<title></title>

<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
// Set slideShowSpeed (milliseconds)
var slideShowSpeed = 3000;
// Duration of crossfade (seconds)
var crossFadeDuration = 5;
// Specify the image files
var Pic = new Array();
// to add more images, just continue
// the pattern, adding to the array below

Pic[0] = 'pic1.gif'
Pic[1] = 'pic2.gif'
Pic[2] = 'pic3.gif'
Pic[3] = 'pic4.gif'

// do not edit anything below this line
var t;
var j = 0;
var p = Pic.length;
var preLoad = new Array();
for (i = 0; i < p; i++) {
preLoad[i] = new Image();
preLoad[i].src = Pic[i];
}
function runSlideShow() {
if (document.all) {
document.images.banner.style.filter="blendTrans(duration=5)";
document.images.banner.style.filter="blendTrans(duration=crossFadeDuration)";
document.images.banner.filters.blendTrans.Apply();
}
document.images.banner.src = preLoad[j].src;
if (document.all) {
document.images.banner.filters.blendTrans.Play();
}
j = j + 1;
if (j > (p - 1)) j = 0;
t = setTimeout('runSlideShow()', slideShowSpeed);
}
// End -->
</script>
</head>

<body onLoad="runSlideShow()">

<p>
<img src="pic1.gif" width="180" height="180" name="banner">
</p>

<p>
<script language='javascript'>
<!--
var marqueewidth = '300px'
var marqueeheight = '50px'
var marqueespeed = 2
var marqueebgcolor = '#FFFFFF'
var pauseit = 1
var marqueecontent="<nobr><img src='pic1.gif' width='25' height='25'><img src='pic2.gif' width='25' height='25'><img src='pic3.gif' width='25' height='25'><img src='pic4.gif' width='25' height='25'></nobr>"
marqueespeed=(document.all)? marqueespeed : Math.max(1, marqueespeed-1)
var copyspeed = marqueespeed
var pausespeed=(pauseit==0)? copyspeed: 0
var iedom=document.all||document.getElementById
if (iedom)
document.write('<span id="temp" style="visibility:hidden;position:absolute;top:-100px;left:-9000px">'+marqueecontent+'</span>')
var actualwidth=''
var cross_marquee, ns_marquee
function populate(){
if (iedom){
cross_marquee=document.getElementById? document.getElementById("iemarquee") : document.all.iemarquee
cross_marquee.style.left=parseInt(marqueewidth)+8+"px"
cross_marquee.innerHTML=marqueecontent
actualwidth=document.all? temp.offsetWidth : document.getElementById("temp").offsetWidth
}
else if (document.layers){
ns_marquee=document.ns_marquee.document.ns_marquee2
ns_marquee.left=parseInt(marqueewidth)+8
ns_marquee.document.write(marqueecontent)
ns_marquee.document.close()
actualwidth=ns_marquee.document.width
}
lefttime=setInterval("scrollmarquee()",20)
}
window.onload=populate
function scrollmarquee(){
if (iedom){
if (parseInt(cross_marquee.style.left)>(actualwidth*(-1)+8))
cross_marquee.style.left=parseInt(cross_marquee.style.left)-copyspeed+"px"
else
cross_marquee.style.left=parseInt(marqueewidth)+8+"px"
}
else if (document.layers){
if (ns_marquee.left>(actualwidth*(-1)+8))
ns_marquee.left-=copyspeed
else
ns_marquee.left=parseInt(marqueewidth)+8
}
}
if (iedom||document.layers){
with (document){
document.write('<table border="0" cellspacing="0" cellpadding="0" width="100%"><td>')
if (iedom){
write('<div style="position:relative;width:'+marqueewidth+';height:'+marqueeheight+';overflow:hidden">')
write('<div style="position:absolute;width:'+marqueewidth+';height:'+marqueeheight+';background-color:'+marqueebgcolor+'" onMouseover="copyspeed=pausespeed" onMouseout="copyspeed=marqueespeed">')
write('<div id="iemarquee" style="position:absolute;left:0px;top:0px"></div>')
write('</div></div>')
}
else if (document.layers){
write('<ilayer width='+marqueewidth+' height='+marqueeheight+' name="ns_marquee" bgColor='+marqueebgcolor+'>')
write('<layer name="ns_marquee2" left=0 top=0 onMouseover="copyspeed=pausespeed" onMouseout="copyspeed=marqueespeed"></layer>')
write('</ilayer>')
}
document.write('</td></table>')
}
}
//-->
</script>
</p>

</body>
</html>

felgall
12-23-2005, 09:44 PM
Which browser are you using? That code is set up to work in IE4 and Netscape 4 and is not set up correctly for version 5+ browsers. The head script keeps checking document.all and then trying to run code which only some browsers that understand document.all understand. document all should only be used for IE4 support like this.

if (document.all && !document.getElementById)
document.write('browser is IE4);



EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum