/ / JQuery change image src bei Mouseover funktioniert nicht in IE7 und 8 - Javascript, JQuery, Internet-Explorer, Internet-Explorer-8, Internet-Explorer-7

JQuery Bild ändern src auf mouseover funktioniert nicht in IE7 und 8 - javascript, jquery, internet-explorer, internet-explorer-8, internet-explorer-7

Ich habe eine Reihe von Bildern, deren Quelle sich bei Mouseover ändern soll. Mein Code funktioniert in allen Bereichen außer IE 7 und 8 einwandfrei. Wenn ich den Mauszeiger über das Bild halte, wird es nur zu einem fehlerhaften Bildlink.

Mein Code ist:

$(".socialicon").each(function() {
$(this).find("img")
.mouseover(function() {
var src = $(this).attr("src").match(/[^.]+/) + "hover.png";
$(this).attr("src", src);
})
.mouseout(function() {
var src = $(this).attr("src").replace("hover.png", ".png");
$(this).attr("src", src);
});
});

Würde jemand wissen, ob es etwas gibt, das ich ändern muss, damit diese Arbeit in IE 7 und 8 funktioniert?

Antworten:

2 für die Antwort № 1

Sie sollten auf IE7 & 8 debuggen - was ist der Wert von $(this).attr("src") und was src Attribut hat das Element nach Eingabe mit der Maus über das Element geführt? Ich nehme an, dass der IE möglicherweise einen absoluten Pfad zum Bild zurückgibt, wie "http://example.com/image.png"- in diesem Fall würde Ihr RegEx nicht funktionieren.

Warum nicht anrufen?

var src = $(this).attr("src").replace(".png", "hover.png");

Anstatt von

var src = $(this).attr("src").match(/[^.]+/) + "hover.png";

Dies wäre konsequenter in Bezug auf die mouseout Methode.