Страницы: 1
Для сайта понадобился скрипт с плавной сменой изображений. Поискав по инету, обнаружил нужный и вставил его в код страницы. Но тут выяснилось, что отлично работая в IE, он напрочь не желает работать в Firefox.
В чем может быть дело?
<script language=javaScript> <!-- Beginning of JavaScript - sandra0 = new Image(); sandra0.src = "sandraaa0.jpg"; sandra1 = new Image(); sandra1.src = "sandraaa1.jpg"; sandra2 = new Image(); sandra2.src = "sandraaa2.jpg"; var i_strngth=1 var i_image=0 var imageurl = new Array() imageurl[0] ="1.gif" imageurl[1] ="2.gif" imageurl[2] ="3.gif" function showimage() { if(document.all) { if (i_strngth <=110) { testimage.innerHTML="<img style='filter:alpha(opacity="+i_strngth+")' src="+imageurl[i_image]+" border=0>"; i_strngth=i_strngth+10 var timer=setTimeout("showimage()",100) } else { clearTimeout(timer) var timer=setTimeout("hideimage()",1000) } } if(document.layers) { clearTimeout(timer) document.testimage.document.write("<img src="+imageurl[i_image]+" border=0>") document.close() i_image++ if (i_image >= imageurl.length) {i_image=0} var timer=setTimeout("showimage()",2000) } } function hideimage() { if (i_strngth >=-10) { testimage.innerHTML="<img style='filter:alpha(opacity="+i_strngth+")' src="+imageurl[i_image]+" border=0>"; i_strngth=i_strngth-10 var timer=setTimeout("hideimage()",100) } else { clearTimeout(timer) i_image++ if (i_image >= imageurl.length) {i_image=0} i_strngth=1 var timer=setTimeout("showimage()",500) } } // - End of JavaScript - --> </script> <body background="Ice3.gif" onLoad="showimage()"> <div id="mainbod" style="position:center;visibility:visible;top:50px;right:360px;"> </div> <div id="testimage" style="position:center;visibility:visible;top:263px;right:295px"></div>
Отсутствует
В нестандартных возможностях IE. Никто кроме него фильтры больше не поддерживает.
Отредактировано SeLarin (01-10-2008 22:15:42)
Welcome to mozilla@conference.jabber.ru
Отсутствует
ilgar
Скрипт, похоже, написан в славные времена Netscape Navigator 4. Именно для него предназначается условие if(document.layers). Для IE, соответственно, if(document.all)
Firefox, как и любой современный браузер, не поддерживает document.layers. Вместо этого надо использовать document.getElementById, который поддерживается всеми современными браузерами, включая IE6+
Отредактировано ego (01-10-2008 22:22:08)
Отсутствует
Что не получается.. Как надо изменить код?
www.finodezda.ru
Отредактировано ilgar (25-12-2009 17:30:56)
Отсутствует
getElementById поддерживается вроде бы с IE5.0
http://www.developertutorials.com/learn … d-2604.php
http://www.tizag.com/javascriptT/javasc … ntbyid.php
Отсутствует
Страницы: 1