Hola,
Necesito vuestra ayuda, me estoy comiendo el coco, no se porque no funciona la marquesina de imagenes horizontal en mozilla.
Os paso el codigo, si alguno tiene otro codigo de ejemplo que funcione se lo agradezco...
muchas gracias a todos.
Código HTML:
<script language="javascript">
var ancho = 958 // especifica la anchura a mostrar
var alto = 55 // especifica la altura a mostrar (alto de las imágenes)
var velo = 16 // velocidad
var dis = 1 //cantidad de pixels que desplaza por movimiento
var imagenes = new Array()
imagenes[0] = new Image()
imagenes[0].src = "mrc/marca1.jpg" // ruta o nombre de imagen
imagenes[1] = new Image()
imagenes[1].src = "mrc/marca2.jpg"
imagenes[2] = new Image()
imagenes[2].src = "mrc/marca3.jpg"
imagenes[2].target = "_blank"
imagenes[3] = new Image()
imagenes[3].src = "mrc/marca4.jpg"
imagenes[4] = new Image()
imagenes[4].src = "mrc/marca5.jpg"
imagenes[5] = new Image()
imagenes[5].src = "mrc/marca6.jpg"
imagenes[6] = new Image()
imagenes[6].src = "mrc/marca7.jpg"
var vel = velo
pasos = 1
var tot = 0
var tam =0;
var pos,pos2,tam2 =0;
function escribe(){
document.write ('<div id ="fuera" style="position:relative; width:' + ancho + 'px; height:' + alto + 'px;overflow:hidden; background-color:#333333;">');
document.write ('<span id="imas" style="position:absolute; width:' + tam + 'px;height:' + alto + 'px; left = -' + tam + 'px;" vel=velo;mueve()">');
for (m=0;m<imagenes.length;m++){
document.write ('<img border="0" src ="' + imagenes[m].src + '" id="ima' + m + '" name="ima' + m + '" onload="tot++;">');
}
document.write ('</span>');
document.write ('<span id="imas2" style="position:absolute; width:' + tam + 'px;height:' + alto + ';left=10px;" atras = false;vel=velo;mueve()">');
for (m=0;m<imagenes.length;m++){
document.write ('<img border="0" src ="' + imagenes[m].src + '" id="imaa' + m + '" name="imaa' + m + '" onload="tot++;">');
}
document.write ('</span>');
document.write ('</div>');
}
var detienee = 0,posb,pos2b;
function mueve(){
pos = document.getElementById('imas').style.left;
pos2 = document.getElementById('imas2').style.left;
pos = pos.replace(/px/,"");
pos = pos.replace(/pt/,"");
pos = new Number(pos);
pos2 = pos2.replace(/px/,"");
pos2 = pos2.replace(/pt/,"");
pos2 = new Number(pos2);
if(detienee == 1){
posb = pos;
pos2b = pos2;
}
if(atras == true){
pos-=dis;
pos2 -=dis;
}
else{
pos += dis;
pos2 += dis;
}
if(pos2 > (ancho + dis)){
if(detienee == 0){
document.getElementById('imas2').style.left = pos - (tam + dis);
pos2 = document.getElementById('imas2').style.left;
}
else{
document.getElementById('imas').style.left = pos
}
}
else{
document.getElementById('imas').style.left = pos
}
if(pos > (ancho + dis)){
if(detienee == 0){
document.getElementById('imas').style.left = pos2 - (tam + dis);
pos = document.getElementById('imas').style.left;
}
else{
document.getElementById('imas2').style.left = pos2;
}
}
else{
document.getElementById('imas2').style.left = pos2
}
if(detienee > 0){
if(detienee == pasos){
vel = velo;
atras = true;
detienee--;
tiempo = setTimeout('mueve()',vel);
}
else{
if(atras == true){
if(detienee>(pasos/2))
{detienee--}
else{
vel = velo;
clearTimeout(tiempo)
}
}
else{
detienee++
}
if(detienee > (pasos/2) && atras == false){vel +=10}
if(detienee < (pasos/2)){vel +=10}
tiempo = setTimeout('mueve()',vel)
}
}
else{
tiempo = setTimeout('mueve()',vel)
}
if(atras == true){
if (pos == posb){
clearTimeout(tiempo);
atras = false;
}
}
}
var tiempo;
var atras = false, ini;
function inicio(){
if(tot == (imagenes.length * 2)){clearTimeout(ini);reDimCapas();mueve()}
else{ini=setTimeout('inicio()',500)}
}
function reDimCapas(){
for(m=0;m<imagenes.length;m++){
tam +=document.getElementById('ima'+m).width + 5
document.getElementById('imas').style.left = (-tam +10);
document.getElementById('imas').style.width = tam ;
document.getElementById('imas2').style.width = tam;
}
}
</script>