2009-08-16 8 views
0

Ich habe Kopfschmerzen, die versuchen, dies zu bewirken: Ich habe ein <ein> Element mit einem Hintergrund Bild definiert mit style = "" Attribut und ich habe eine Funktion zum Anfügen innerhalb der <ein> Element ein <span> Umgang mit verschiedenen Hintergrund-Positionen für: Hover-Effekte mit Deckkraft Änderungen. Die Sache ist, ich brauche das gleiche Stil-Attribut von bekomme jeden <ein> Element jeden Kind <Spanne> aber nur die erste Hintergrundbild wird auf all <Spanne> Elemente kopiert, auch $ mit ("span.hover"). parent(). attr ("style") als Selektor!jQuery - .each() gibt nur die ersten Elementattribute zurück, muss jedes Elementattribut speichern und in jedem untergeordneten Element verwenden

http://pastebin.me/ac4cc52af64f6e831366ca61c7bbe63b

Above Sie können sehen, wie es aussieht und sehen, dass es nicht richtig funktioniert. Diese

+0

Omg, ich danke Ihnen so viel Greg! Ich habe die ganze Nacht verbracht, um das herauszufinden und ich war dabei aufzugeben! Vielen Dank! – Samuel

+0

Ich habe das Skript und entfernt ein paar Zeilen optmized, jetzt ist es funktioniert schnell und IE8 rendert das richtig - http://pastebin.me/c421b31f354f6630dd71cc5dff95665d – Samuel

Antwort

4

:

var $ans = $("span.hover").parent().attr("style"); 

sollte

var $ans = $(this).parent().attr("style"); 

Sie sind wieder immer alle Spannweiten jedes Mal, mit dem Sie die erste gibt.

& Arbeits getestet.

+0

Dies ist einer der häufigsten Fehler, die Menschen mit 'each' machen. – MitMaro