Tengo un «contenedor» DIV que se ajusta para caber en la ventana de 100% y me gustaría cargar una imagen al azar en la DIV.
Tengo un guión de trabajo que trabaja para el fondo del html, pero no puedo lograr que funcione en un DIV en lugar.

Anyn sugerencias?

Aquí está el script original:

<script type="text/javascript">
    var imgCount = 3;
    var dir = 'images/';
    var randomCount = Math.round(Math.random() * (imgCount - 1)) + 1;
    var images = new Array
            images[1] = "bg-01.jpg",
            images[2] = "bg-02.jpg",
            images[3] = "bg-03.jpg",
    document.body.style.backgroundImage = "url(" + dir + images[randomCount] + ")"; </script>
  • Y lo que es un problema con div? Mostrar el código en la que usted está tratando de establecer un fondo de un div, no para el cuerpo.

2 Comentarios

  1. 5

    No debería haber ningún problema con eso. Sólo tienes que encontrar ese div, por ejemplo con el documento.getElementById() y aplicar una imagen de fondo a ella:

    <div id="divID"></div>
    <script type="text/javascript">
        var imgCount = 3;
            var dir = 'images/';
            var randomCount = Math.round(Math.random() * (imgCount - 1)) + 1;
            var images = new Array
                    images[1] = "bg-01.jpg",
                    images[2] = "bg-02.jpg",
                    images[3] = "bg-03.jpg",
            document.getElementById("divID").style.backgroundImage = "url(" + dir + images[randomCount] + ")"; 
       </script>

    Pero tenga en cuenta que por encima de bloque de secuencia de comandos debe ir DESPUÉS de un div que usted necesita para actualizar.
    De lo contrario, en el momento de la ejecución de secuencias de comandos div no estarán disponibles en el DOM y document.getElementById encontrarán nada.

    • Perfecto! Yo había tratado de «getElementById» antes, pero no me había colocado si DESPUÉS de la div. Saludos
  2. 1

    document.body.style.backgroundImage establece el fondo para <body>

    Usted puede fácilmente la fuerza para hacerlo por su seleccionado div haciendo:

    document.getElementById('divID').style.backgroundImage = "url(" + dir + images[randomCount] + ")";

Dejar respuesta

Please enter your comment!
Please enter your name here