2013-08-10 6 views
0

나는 너비가 % 인 다른 요소에 해당하는 sertain 요소의 너비를 계속 변경하는 반응 형 프로그램을 작성했습니다. 어느 것이 잘 작동합니다. 그러나 div의 모든 이미지를 이미지의 웅장한 부모처럼 크게 변경하고 싶을 때 문제가 발생했습니다.자바 스크립트로 모든 클래스를 타겟팅하는 방법. 아니오 jQuery

JS :

var thebigone = document.getElementById('imgpresentation'); 
var demimages = document.getElementsByClassName('presentatinthis'); 

fixtheresponsiveness = setInterval(fixthis,1000); 
function fixthis() 
{ 
    demimages.style.width = thebigone.offsetWidth+"px"; 
} 

fixtheresponsiveness(); 

HTML : 내가 "ID"와 "에서 getElementById"와 "getelementsbyclassname"와 "클래스"를 대체하지만 그것은 단지 처음에 작동하는 경우

<div id="imgpresentation" class="imgpresentation"> 
    <div id="slidethemimgpresentation" class="slidethemimgpresentation"> 
     <img class="presentatinthis" src="img/billeder/xyachtvisit/xyachtbesoeg1.jpg"/> 
     <img class="presentatinthis" src="img/billeder/xyachtvisit/xyachtbesoeg2.jpg"/> 
     <img class="presentatinthis" src="img/billeder/xyachtvisit/xyachtbesoeg3.jpg"/> 
     <img class="presentatinthis" src="img/billeder/xyachtvisit/xyachtbesoeg4.jpg"/> 
     <img class="presentatinthis" src="img/billeder/xyachtvisit/xyachtbesoeg5.jpg"/> 
     <img class="presentatinthis" src="img/billeder/xyachtvisit/xyachtbesoeg6.jpg"/> 
     <img class="presentatinthis" src="img/billeder/xyachtvisit/xyachtbesoeg7.jpg"/> 
     <img class="presentatinthis" src="img/billeder/xyachtvisit/xyachtbesoeg8.jpg"/> 
     <img class="presentatinthis" src="img/billeder/xyachtvisit/xyachtbesoeg9.jpg"/> 
     <img class="presentatinthis" src="img/billeder/xyachtvisit/xyachtbesoeg10.jpg"/> 
    </div> 
</div> 

그것은 작동 div 안에 img. 나는, 그래서 $를 제안하지 마십시오 jQuery를 사용하지 않으

답변

2

document.getElementsByClassName 사용자가 액세스 할 결과를 통해 루프 가지고 설정합니다 의미 NodeList,를 반환 ('. presentatinthis') 각 노드의style

var i = demimages.length; 
while (i--) demimages[i].style.width = thebigone.offsetWidth+"px"; 
+0

예, 당신은 내가 입력하기 쉽게 찾을 수 있기 때문에, 난 그냥 가끔 while'이 같은'사용하지만 루프의 당신의 마음에 드는 유형을 사용할 수 있습니다. –

+0

정말 고마워요! 코드에 대해 이해할 수없는 것들이 몇 가지 있습니다. 나는 그것을 싫어합니다 .... while 루프의 인수는 무엇입니까? –

+0

@KristianDaugaard'while (i -)'는 "while'은'i'가 0이 아닌 것을 의미하고,'i = i - 1'은 테스트를 거친다. 그것을'var i; for (i = demimages.length - 1; i> = 0; i = i - 1)' –