Foros del Web » Programando para Internet » Javascript »

Un rotador que no va en Netscape

Estas en el tema de Un rotador que no va en Netscape en el foro de Javascript en Foros del Web. Hola a todos, tengo un problema con un rotador de banners, y es que con IE rota y non Netscape no. Parte del codigo y ...
  #1 (permalink)  
Antiguo 24/08/2004, 05:02
Avatar de eeeee  
Fecha de Ingreso: febrero-2004
Ubicación: Almería
Mensajes: 397
Antigüedad: 20 años, 2 meses
Puntos: 0
Un rotador que no va en Netscape

Hola a todos, tengo un problema con un rotador de banners, y es que con IE rota y non Netscape no.
Parte del codigo y donde está el problema es este:

function forward(){
if (which<photos.length-1){
which++}
else{which = 0}
applyeffect()
document.images.photoslider.src=photos[which]
playeffect()
timer = setTimeout('forward()',8000)
}

esta ultima linea hace que rote automatico pero solo en IE
A ver si alguien me da la solución..

Gracias
__________________
Eusol .............
aprendiendo de ustedes
________________________

http://www.alicun.com
  #2 (permalink)  
Antiguo 24/08/2004, 08:09
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola eeeee:

El códgo parece normal, aunque no se ve el contenido de applyeffect y playeffect que supongo que tendrá cosas no estándar que solo funcionen en explorer y "cuelguen" el script... puedes condicionar esas líneas para que irvan solo en explorer y seguro que funcionará...

if (navigator.appname == Lo_Que_Sea_en_Explorer) applyeffect();
...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 24/08/2004, 08:56
Avatar de eeeee  
Fecha de Ingreso: febrero-2004
Ubicación: Almería
Mensajes: 397
Antigüedad: 20 años, 2 meses
Puntos: 0
Hola caricatos te voy a poner el codigo completo y despues el mismo modificado para manual que si va en Netscape:
Cita:
<script language="JavaScript1.1">
var photos=new Array()
var photoslink=new Array()
var which=0

photos[0]="http://ads.ulises.net/banners/mobiofi.com.gif"
.............

var linkornot=1

photoslink[0]="http://track.ulises.net/track.asp?id=10004330&camp=2146"
.............

var preloadedimages=new Array()
for (i=0;i<photos.length;i++){
preloadedimages[i]=new Image()
preloadedimages[i].src=photos[i]
}
function applyeffect(){
if (document.all){
photoslider.filters.revealTrans.Transition=Math.fl oor(Math.random()*23)
photoslider.filters.revealTrans.stop()
photoslider.filters.revealTrans.apply()
}
}

function playeffect(){
if (document.all)
photoslider.filters.revealTrans.play()
}

function forward(){
if (which<photos.length-1){
which++}
else{which = 0}
applyeffect()
document.images.photoslider.src=photos[which]
playeffect()
timer=setTimeout("forward()", 8000);
}

function transport(){
window.open(photoslink[which],"_blanc");
}

</script>
</head>
<body bgcolor="#333333" topmargin="0" leftmargin="0" background="/fondos/mainBg.gif">
<script>
if (linkornot==1)
document.write('<a href="javascript:transport()">')
document.write('<img src="'+photos[0]+'" name="photoslider" style="filter:revealTrans(duration=2,transition=23 )" border=0>')
if (linkornot==1)
document.write('</a>')
document.body.onload = forward
</script>
Cita:
<script type="text/javascript">
var photos=new Array()
var photoslink=new Array()
var which=0

photos[0]="http://ads.ulises.net/banners/mobiofi.com.gif"
..........

var linkornot=1

photoslink[0]="http://track.ulises.net/track.asp?id=10004330&camp=2146"
..............

var preloadedimages=new Array()
for (i=0;i<photos.length;i++){
preloadedimages[i]=new Image()
preloadedimages[i].src=photos[i]
}
function applyeffect(){
if (document.all && photoslider.filters){
photoslider.filters.revealTrans.Transition=Math.fl oor(Math.random()*23)
photoslider.filters.revealTrans.stop()
photoslider.filters.revealTrans.apply()
}
}
function playeffect(){
if (document.all && photoslider.filters)
photoslider.filters.revealTrans.play()
}
function keeptrack(){
window.status="Image "+(which+1)+" of "+photos.length
}
function backward(){
if (which>0){
which--
applyeffect()
document.images.photoslider.src=photos[which]
playeffect()
keeptrack()
}
}

function forward(){
if (which<photos.length-1){
which++
applyeffect()
document.images.photoslider.src=photos[which]
playeffect()
keeptrack()
}
}

function transport(){
window.location=photoslink[which]
}

</script></head>

<body>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="100%" colspan="2" height="22"><center>
<script>
if (linkornot==1)
document.write('<a href="javascript:transport()">')
document.write('<img src="'+photos[0]+'" name="photoslider" style="filter:revealTrans(duration=2,transition=23 )" border=0>')
if (linkornot==1)
document.write('</a>')
</script>
</center></td>
</tr>
<tr>
<td width="50%" height="21"><p align="left"><a href="#" onClick="backward();return false">Previous Slide</a></td>
<td width="50%" height="21"><p align="right"><a href="#" onClick="forward();return false">Next Slide</a></td>
</tr>
</table>
El primero no rota en Netscape y el segundo si rota pero es manual, solo cambia que el de arriba no lleva las funciones backward - forward y lleva el automatico,

Debe ser alguna tontería pero no doy con ella y le di mil vueltas
un saludo
__________________
Eusol .............
aprendiendo de ustedes
________________________

http://www.alicun.com
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:50.