Ich habe ein Nav hier mit li innerhalb ist ein Anker-Tag und span, die aus dem Text bestehen. Was ich erreichen möchte, ist, alle span im Nav mit jquery replaceWith zu ersetzen, aber ich kann nicht scheinen, damit es funktioniert. Dies ist der Code, den ich gemacht habe. Irgendeine Idee was mein Fehler ist?replaceWith Jquery funktioniert nicht, wenn mehr als 2 Bilder
<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>
Dies ist mein HTML-Link in Jsbin. http://jsbin.com/magofarivi/edit?html,output
Das sollte funktionieren. Hier ist ein vereinfachtes Beispiel mit Ihrem JS: [Codepen] (http://codepen.io/anon/pen/RRjAvG). Meine Vermutung wäre, dass Ihr Klassenname in diesem dritten falsch ist, aber wir können es nicht sagen, da der HTML-Code nicht angegeben ist. Muss es auch in einer Schleife sein? Im Augenblick werden diese 'replaceWith()' Aufrufe drei separate Male für jeden Selektor ausgeführt. –
Ich benutzte die Forloop zu console.log das IMG-Array in meinen ersten Versuchen. – icedoge
Bitte geben Sie nur den entsprechenden Code an. Wenn Sie es nicht mehr verwenden, sollte es nicht in der Frage enthalten sein. Außerdem funktioniert Ihr Code immer noch wie erwartet mit dem HTML im JS Bin. Es muss etwas anderes sein. [Codepen] (http://codepen.io/anon/pen/BzmKqq) –