puede utilizar setInterval
para configurar la devolución de llamada temporizada, y establecer el src
de un elemento img
:
window.onload = function() {
var slides = [ "path_to_image_one",
"path_to_image_two",
"path_to_image_three" // ...
],
index = 0,
timer = 0;
// Show the first slide
showNextSlide();
// Show "next" slide every five seconds
timer = setInterval(showNextSlide, 5000);
// The function we call to show the "next" slide
function showNextSlide() {
if (index >= slides.length) {
index = 0;
}
document.getElementById('theImage').src = slides[index++];
}
};
... donde su margen de beneficio para la imagen es:
<img id="theImage" src="path_to_initial_placeholder">
Tenga en cuenta que me he guardado el mango temporizador en timer
pero no utilicé. Esto es solo porque puede usarlo para cancelar el temporizador si necesita detener la presentación de diapositivas.
Actualización: Acabo de ver que desea obtener las imágenes de un div en alguna parte (mientras que arriba he proporcionado las rutas en el código mismo). Lo suficientemente simple para crear slides
dinámicamente; edición revisada de lo anterior que agarra las imágenes que son directos hijos del div con el ID "theDiv":
window.onload = function() {
var slides = [],
index = 0,
timer = 0,
node;
// Get the slides
for (node = document.getElementById('theDiv').childNodes;
node;
node = node.nextSibling) {
if (node.nodeType == 1 && node.tagName == "IMG") {
slides.push(node.src);
}
}
// Show the first slide
showNextSlide();
// Show "next" slide every five seconds
timer = setInterval(showNextSlide, 5000);
// The function we call to show the "next" slide
function showNextSlide() {
if (index >= slides.length) {
index = 0;
}
document.getElementById('theImage').src = slides[index++];
}
};
¿Puedo preguntar por qué querría hacer más trabajo para usted? –
solo para aprender, depende de jQ – Blankman