2014-03-13 2 views
2

나는 순수한 자바 스크립트 내용 슬라이더를 만들려고 노력하고 있으며 거의 ​​동일한 문제가 2 시간 동안 지속됩니다.첫 번째 항목의 루프 스타일을 변경하는 경우에만

루프는 미래의 슬라이딩을 위해 서로 옆에있는 모든 "컨테이너"div를 배치합니다. 그것은 단지 한 번 루프 이유

var sliderWidth = sliderActive[0].offsetWidth; 

for (var i = 0; i < container.length; i++) { 
    container[i].style.left = sliderWidth * i; 
} 

jsfiddle

알아낼 수 없습니다. 어떤 아이디어?

+0

한 번만 그것을 루프를 수행하거나 첫 번째 요소를 변경합니까? 거기에 큰 차이가있을 수 있습니다. 'for'-loop에서'console.log'를 시도 했습니까? – lascort

답변

3

for -loop에는 아무 문제가 없습니다. 사실 실제로 left 속성을 올바르게 설정하고 있지만 숫자 (0 이외)는이 속성의 유효한 값이 아닙니다.

이 같은 스타일에 대한 단위를 지정하십시오 :

container[i].style.left = (sliderWidth * i) + 'px'; 
+0

Brilliant! 나는 머리를 부러 뜨 렸고, 인라인 스타일을 설정하고 있다는 것을 잊어서 단위를 지정해야합니다. 그것은 작동합니다, 많이 고마워요. –

관련 문제