Foros del Web » Programando para Internet » Javascript »

Problema con dos scripts

Estas en el tema de Problema con dos scripts en el foro de Javascript en Foros del Web. Hola. Estoy haciendo una pagina y puse dos scripts, uno para rotar una imagen en el lugar, y otro para hacer un desplazamiento de varias ...
  #1 (permalink)  
Antiguo 22/10/2004, 13:45
 
Fecha de Ingreso: septiembre-2004
Mensajes: 27
Antigüedad: 19 años, 7 meses
Puntos: 0
Problema con dos scripts

Hola. Estoy haciendo una pagina y puse dos scripts, uno para rotar una imagen en el lugar, y otro para hacer un desplazamiento de varias imagenes. Los dos por separado funcionan perfectamente, pero al ponerlos juntos, me funciona uno solo.

estos son los codigos

<script language="JavaScript1.1">
var specifyimage=new Array()
specifyimage[0]="supply.gif"
specifyimage[1]="bandera_maga.gif"
specifyimage[2]="supply.gif"
specifyimage[3]="bandera_maga.gif"

var delay=1000

//Counter for array
var count =1;

var cubeimage=new Array()
for (i=0;i<specifyimage.length;i++){
cubeimage[i]=new Image()
cubeimage[i].src=specifyimage[i]
}

function movecube(){
if (window.createPopup)
cube.filters[0].apply()
document.images.cube.src=cubeimage[count].src;
if (window.createPopup)
cube.filters[0].play()
count++;
if (count==cubeimage.length)
count=0;
setTimeout("movecube()",delay)
}

window.onload=new Function("setTimeout('movecube()',delay)")
</script>
<img src="supply.gif" name="cube" border=0 style="filter:progid:DXImageTransform.Microsoft.St retch(stretchStyle='PUSH')" width="80" height="79">



y este es el otro, para desplazamiento:

<script language="JavaScript1.2">
<!--

var sliderwidth=400
var sliderheight=150
var slidespeed=5

var leftrightslide=new Array()
var finalslide=''
leftrightslide[0]='<img src="tele.jpg" border=0>'
leftrightslide[1]='<img src="estufa.gif" border=0 >'
leftrightslide[2]='<img src="minicomp.gif" border=0 >'
leftrightslide[3]='<img src="microondas.gif" border=0 >'
leftrightslide[4]='<img src="mesa.gif" border=0 >'
leftrightslide[5]='<img src="lavadora.gif" border=0 >'


var copyspeed=slidespeed
for (i=0;i<leftrightslide.length;i++)
finalslide=finalslide+leftrightslide[i]+"&nbsp;&nbsp;"


if (document.all){
document.write('<marquee id="ieslider" scrollAmount=0 style="width:'+sliderwidth+'">'+finalslide+'</marquee>')
ieslider.onmouseover=new Function("ieslider.scrollAmount=0")
ieslider.onmouseout=new Function("if (document.readyState=='complete') ieslider.scrollAmount=slidespeed")
}

function regenerate(){
window.location.reload()
}
function regenerate2(){
if (document.layers){
document.ns_slider01.visibility="show"
setTimeout("window.onresize=regenerate",450)
intializeleftrightslide()
}
if (document.all)
ieslider.scrollAmount=slidespeed
}

function intializeleftrightslide(){
document.ns_slider01.document.ns_slider02.document .write('<nobr>'+finalslide+'</nobr>')
document. ns_slider01.document.ns_slider02.document.close()
thelength=document.ns_slider01.document.ns_slider0 2.document.width
scrollslide()
}

function scrollslide(){
if (document.ns_slider01.document.ns_slider02.left>=t helength*(-1)){
document.ns_slider01.document.ns_slider02.left-=slidespeed
setTimeout("scrollslide()",100)
}
else{
document.ns_slider01.document.ns_slider02.left=sli derwidth
scrollslide()
}
}
window.onload=regenerate2

//-->
</script>
<ilayer width=&{sliderwidth}; height=&{sliderheight}; name="ns_slider01" visibility=hide>
<layer name="ns_slider02" onMouseover="slidespeed=0;" onMouseout="slidespeed=copyspeed">
</layer>
</ilayer>
<p align="center" style="margin-top: 0; margin-bottom: 0">



Ayudenme plis, esto me tiene de cabeza
  #2 (permalink)  
Antiguo 22/10/2004, 15:24
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 22 años, 11 meses
Puntos: 25
Hola.

El problema lo tienes con el window.onload

prueba a quitar las dos líneas que tienes

ésta: window.onload=new Function("setTimeout('movecube()',delay)")

y ésta: window.onload=regenerate2


y las cambias por ésta:

<body onload="setTimeout('movecube()',delay);regenerate2 ">


No lo he probado, pero creo que no te funciona por esto que te digo.

Ya nos contarás a ver cómo te ha ido.
  #3 (permalink)  
Antiguo 23/10/2004, 07:05
 
Fecha de Ingreso: septiembre-2004
Mensajes: 27
Antigüedad: 19 años, 7 meses
Puntos: 0
la verdad ahora no me funciona ninguno de los dos..jaja, quizás los puse mal, no etngo qeue hacer ningun cambio mas? tengo qe poner ese codigo en las 2 lineas de que voy a reemplazar o tengo qe borrar alguna? ojala pudieras especificarmelo ;) gracias
  #4 (permalink)  
Antiguo 23/10/2004, 12:18
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 22 años, 11 meses
Puntos: 25
tienes que quitar las dos del window.open

y poner la del <body>

que te quede así:
Código:
<script language="JavaScript1.1">
var specifyimage=new Array()
specifyimage[0]="supply.gif"
specifyimage[1]="bandera_maga.gif"
specifyimage[2]="supply.gif"
specifyimage[3]="bandera_maga.gif"

var delay=1000

//Counter for array
var count =1;

var cubeimage=new Array()
for (i=0;i<specifyimage.length;i++){
cubeimage[i]=new Image()
cubeimage[i].src=specifyimage[i]
}

function movecube(){
if (window.createPopup)
cube.filters[0].apply()
document.images.cube.src=cubeimage[count].src;
if (window.createPopup)
cube.filters[0].play()
count++;
if (count==cubeimage.length)
count=0;
setTimeout("movecube()",delay)
}
var sliderwidth=400
var sliderheight=150
var slidespeed=5

var leftrightslide=new Array()
var finalslide=''
leftrightslide[0]='<img src="tele.jpg" border=0>'
leftrightslide[1]='<img src="estufa.gif" border=0 >'
leftrightslide[2]='<img src="minicomp.gif" border=0 >'
leftrightslide[3]='<img src="microondas.gif" border=0 >'
leftrightslide[4]='<img src="mesa.gif" border=0 >'
leftrightslide[5]='<img src="lavadora.gif" border=0 >'


var copyspeed=slidespeed
for (i=0;i<leftrightslide.length;i++)
finalslide=finalslide+leftrightslide[i]+"&nbsp;&nbsp;"


if (document.all){
document.write('<marquee id="ieslider" scrollAmount=0 style="width:'+sliderwidth+'">'+finalslide+'</marquee>')
ieslider.onmouseover=new Function("ieslider.scrollAmount=0")
ieslider.onmouseout=new Function("if (document.readyState=='complete') ieslider.scrollAmount=slidespeed")
}

function regenerate(){
window.location.reload()
}
function regenerate2(){
if (document.layers){
document.ns_slider01.visibility="show"
setTimeout("window.onresize=regenerate",450)
intializeleftrightslide()
}
if (document.all)
ieslider.scrollAmount=slidespeed
}

function intializeleftrightslide(){
document.ns_slider01.document.ns_slider02.document.write('<nobr>'+finalslide+'</nobr>')
document. ns_slider01.document.ns_slider02.document.close()
thelength=document.ns_slider01.document.ns_slider02.document.width
scrollslide()
}

function scrollslide(){
if (document.ns_slider01.document.ns_slider02.left>=thelength*(-1)){
document.ns_slider01.document.ns_slider02.left-=slidespeed
setTimeout("scrollslide()",100)
}
else{
document.ns_slider01.document.ns_slider02.left=sliderwidth
scrollslide()
}
}

<body onload="setTimeout('movecube()',delay);regenerate2()">

<img src="supply.gif" name="cube" border=0 style="filter:progid:DXImageTransform.Microsoft.Stretch(stretchStyle='PUSH')" width="80" height="79">

 <ilayer width=&{sliderwidth}; height=&{sliderheight}; name="ns_slider01" visibility=hide>
<layer name="ns_slider02" onMouseover="slidespeed=0;" onMouseout="slidespeed=copyspeed">
</layer>
</ilayer>
<p align="center" style="margin-top: 0; margin-bottom: 0">

</body>
Prueba y me cuentas.

En lo que te hecho en el otro mensaje, me faltaba poner detras de regenerate2 los paréntesis "()"
  #5 (permalink)  
Antiguo 25/10/2004, 07:45
 
Fecha de Ingreso: septiembre-2004
Mensajes: 27
Antigüedad: 19 años, 7 meses
Puntos: 0
Faltó cerrar el <script> al final pero funcionó super bien

Gracias de verdad, te debo una ;)
  #6 (permalink)  
Antiguo 26/10/2004, 07:51
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 22 años, 11 meses
Puntos: 25
Cita:
Iniciado por lemon
Faltó cerrar el <script> al final pero funcionó super bien

Ups, no me di cuenta.



Un saludote.
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 19:19.