나는 DOM을 사용하여 작업하고 자바 스크립트를 사용하는 경험이 거의 없으며 성취하려는 특정 작업이 있습니다.사이트로드시, 자바 스크립트를 사용하여 동적으로 링크의 모든 이미지를 어떻게 랩핑합니까?
의 내가 내 HTML에 이미지가 있다고 가정 해 봅시다 :
<img src="foo.jpg" />
사이트로드, 나는 그 이미지 (실제로 문서의 모든 이미지를) 가지고, 그리고 링크를 포장 할 때 :
<a href="http://www.foobar.com"><img src="foo.jpg" /></a>
이 작업을 수행하려면 어떻게해야합니까? Google은이 특정 작업과 관련하여 나에게 많은 것을 보여주지 못했습니다. 로드시 문서의 모든 이미지에 액세스하고 반복 할 수 있지만 링크에서 이미지를 래핑하기 위해 어디로 가야할지 잘 모르겠습니다.
window.onload = function() {
var images = document.getElementsByTagName('img');
for (var i = 0, image = images[i]; i < images.length; i++) {
var wrapper = document.createElement('a');
wrapper.setAttribute('href', 'http://www.foobar.com');
wrapper.appendChild(image.cloneNode(true));
image.parentNode.replaceChild(wrapper, image);
}
};
내가 DOM 조작 우수한 jQuery 라이브러리를 사용을 권장합니다 :
을 +1은 replaceChild에 대해 몰랐고, 내 자신의 일반 js 버전은 wor를하지 않았다. k를 아주 잘 테스트했을 때 =) –