Ich habe folgende Schnipsel in einem meiner HTML-Seiten:JQuery wechselnden Hintergrund der Eltern div
<div class="inputboximage">
<div class="value2">
<input name='address1' value='Somewhere' type="text" size="26" maxlength="40" />
<br />
</div>
</div>
Mein Problem ist, dass ich die inputboximage Hintergrund ändern müssen, wenn ich im address1 Textfeld klicken und zurückkehren zum Original, wenn es den Fokus verliert.
<script>
$(document).ready(function(){
$("input").focus(function() {
$(this.parentNode).css('background-image', 'url(images/curvedinputblue.gif)');
});
$("input").blur(function() {
$(this.parentNode).css('background-image', 'url(images/curvedinput.gif)');
});
});
</script>
aber anstatt sie zu ersetzen, das Bild, so scheint es, ein Hintergrundbild auf dem Wert2 div werden, indem wie man erwarten würde:
Ich habe folgendes verwendet. Ich kann parentNode.parentNode in diesem Fall verwenden, aber es besteht auch die Möglichkeit, dass der inputBoxImage-Knoten weiter oben oder unten in der übergeordneten Struktur sein könnte.
Gibt es eine Möglichkeit, dass ich diesen Code ändern kann, so dass es durch den übergeordneten Baum navigieren wird, bis es ein div namens inbiboxage findet und das Bild dort ersetzen?
Wenn ich zwei verschiedene Div-Klassen habe, inputboxage und inputboxageLarge, gibt es eine Möglichkeit, diese Funktion so zu ändern, dass sie mit beiden funktioniert und das Hintergrundbild durch ein anderes Bild ersetzt?
Dank Phil, das funktioniert perfekt. Alles, was ich jetzt tun muss, ist herauszufinden, wie es funktioniert für andere Elemente, die die gleiche Funktionalität, aber verschiedene Hintergrundbilder benötigen. – Jimoc