addEventListener는 IE와 친숙하지 않지만 일반적으로이 방법에 대해 궁금합니다.for 루프에서 img 요소가있는 addEventListener를 사용할 수 있습니까?
imgs와 함께 루프에서 'onload'addEventListener를 사용하려고합니다. 이벤트 리스너가 첫 번째 요소에만 추가되는 것처럼 보이지 않는 내 함수가 아닌 것입니다. 이미지 경로는 일부 PHP에서오고 있으며 HTML을 통해로드를 가져 오려고합니다.
원래 나는이 (동안 PHP에서 HTML의 발췌)처럼했다 :<img
onLoad="SLIDESHOW.crkarchProject.onImageLoad(<?php echo $rowSlideImage[1]; ?>)"
id="<?php echo $rowSlideImage[1]; ?>"
src="./slideshow_images/<?php echo $rowSlideImage[2]; ?>"
alt="<?php echo $rowSlideImage[3]; ?>"/>
내가 뭘하려는 것은 각 이미지에 대한 내 루프 또는 addEventListener를 사용합니다. 이것은 지금 제가 작업하고있는 코드 발췌입니다 :
// get the images and how many
photos = slideshow.getElementsByTagName("img");
totalImageCount = photos.length;
for (i = 0; i < totalImageCount; i += 1) {
var elem = photos[i];
elem.addEventListener('onload', doIt, false);
}
function doIt() {
console.log("YO!");
}
내 접근 방식이 잘못 되었습니까? 그 var elem은 for 루프에서 나쁜 생각입니까? 나는 또한 시도했다 :
// also tried this in the loop
photos[i].addEventListener('onload', doIt, false);
나는 단지 함께 addEventListener를 피한다 (IE의 것의 b/c)? 루프에서 elem.onload를 직접 사용할 때 doIt이 실행되는 것을 볼 수 있습니다.
// this will fire the doIt!
elem.onload = doIt();
고마워요!
굉장! 그 링크 주셔서 감사합니다 !! 나는 MDN에서 그런 것을 좋아했다. – kaplan
링크는 실제로 MDN에 나열되어 있습니다. -) – Sirko
Dottoro는 지원 및 HTML 참조가 좋습니다. 다음은 MDN에서 발견 한 라이징입니다. https://developer.mozilla.org/en/DOM/DOM_event_reference – kaplan