2
여기에 li가있는 nav은 텍스트로 구성된 앵커 태그와 스팬입니다. 내가 달성하고자하는 것은 jquery replaceWith를 사용하여 nav의 모든 스팬을 대체하는 것입니다. 그러나 나는 그것을 작동시키는 것처럼 보이지 않습니다. 이것이 제가 작성한 코드입니다. 내 오류는 무엇입니까?replaceWith Jquery 2 개 이상의 이미지가있는 경우 작동하지 않습니다.
<script>
$(document).ready(function() {
//store img in an array.
var imgArray= [ "<img class=\"imgNav\" src=\"https://irp-cdn.multiscreensite.com/abc3fe9a/dms3rep/multi/services_icon_1-123x123.png\"/>",
"<img class=\"imgNav\" src=\"https://irp-cdn.multiscreensite.com/abc3fe9a/dms3rep/multi/services_icon_4-123x123.png\"/>","<img class=\"imgNav\" src=\"https://irp-cdn.multiscreensite.com/abc3fe9a/dms3rep/multi/services_icon_66-123x123.png\"/>" ];
$('.dmUDNavigationItem_010101661768 > span.navItemText').replaceWith(imgArray[0]);
$('.dmUDNavigationItem_010101628177 > span.navItemText').replaceWith(imgArray[1]);
/* if I put this third one in the script it doesn't work.
$('.dmUDNavigationItem_010101420041 > span.navItemText').replaceWith(imgArray[2]);
*/
});
</script>
이것은 jsbin의 HTML 링크입니다. http://jsbin.com/magofarivi/edit?html,output
제공 그게 효과가 있어야합니다. 다음은 JS를 사용하는 간단한 예입니다. [Codepen] (http://codepen.io/anon/pen/RRjAvG). 내 생각 엔 당신의 클래스 이름이 3 번째 것에서 틀린 것이지만 html이 제공되지 않았기 때문에 우리는 말할 수 없습니다. 또한 루프에 있어야합니까? 현재, 그것은 각각의 selector에 대해'replaceWith()'호출을 세 번씩 실행합니다. –
나는 첫 번째 시도에서 img 배열을 console.log에 forloop로 사용하고 있었다. – icedoge
관련 코드 만 제공해주십시오. 더 이상 사용하지 않으면 질문에 포함되어서는 안됩니다. 또한 JS Bin의 html로 코드가 예상대로 작동합니다. 그것은 다른 것임에 틀림 없다. [Codepen] (http://codepen.io/anon/pen/BzmKqq) –