2016-09-16 4 views
0

나는 자바 스크립트가 새로운 것이므로 여기에 제 질문은 있습니다. html css 및 javaScript를 사용하여 세 개의 이미지 슬라이드 쇼를 만들고 있습니다. 그러나 그것은 항상 두 번째 이미지로 시작됩니다. 여기자바 스크립트를 사용하는 슬라이드 쇼

내 코드 :

var slideIndex=0; 
window.onload=showSlides; 
showSlides(); 

function showSlides() { 
    var i; 
    var slides = document.getElementsByClassName("mySlides"); 
    var dots = document.getElementsByClassName("dot"); 
    for (i = 0; i < slides.length; i++) { 
     slides[i].style.display = "none"; 
    } 
    slideIndex++; 
    if (slideIndex> slides.length) {slideIndex = 1} 
    for (i = 0; i < dots.length; i++) { 
     dots[i].className = dots[i].className.replace(" active", ""); 
    } 
    slides[slideIndex-1].style.display = "block"; 
    dots[slideIndex-1].className += " active"; 
    setTimeout(showSlides, 2000); // Change image every 2 seconds 
} 

답변

1

1) 함수의 잘못된 사용을해야합니다. 두 번 사용 :

window.onload=showSlides; 
showSlides(); 

대신 그 중 하나를 사용하십시오.

2) 함수가 실행될 때마다 두 번째 이미지로 점프 할 수 있습니다. 그렇다면 0 대신 -1 시작 인덱스부터 시작하십시오.

+0

감사합니다. –

+0

괜찮습니다. 답변을 업데이트했으며, 다시 읽었습니다. –

+0

onload와 함께 사용하면 작동하지 않습니다. –

관련 문제