2009-08-16 2 views
0

私はこの仕事をしようとしています:< >要素は、 style = ""という属性で定義された画像で、<の>の要素の中に<の範囲>を追加する機能を追加しました:不透明度を変更したホバー効果。事は、私がから同じスタイル属性を取得する必要があり、各 < >要素子<スパン>だけ最初の背景画像はすべて<スパン>要素にコピーされ、さえ$を使用して(各へ"span.hover")。parent()。attr( "style")セレクタとして!あなたの上jQuery - 最初の要素の属性のみを返す.each()は、各要素の属性を格納し、各子要素で使用する必要があります。

http://pastebin.me/ac4cc52af64f6e831366ca61c7bbe63b

は、それがどのようなものか見て、それが正常に動作していないだことがわかります。

+0

Omg、ありがとうございましたGreg!私はこれを理解するために一晩中過ごした、私はあきらめようとしていた!ありがとう! – Samuel

+0

私はこのスクリプトを最適化していくつかの行を削除しました。これは速く動作し、IE8は正しくレンダリングされています - http://pastebin.me/c421b31f354f6630dd71cc5dff95665d – Samuel

答えて

4

この:

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

は、あなたがあなたの最初のものを与えるすべてのスパンたびに、再取得している

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

でなければなりません。

テスト済み&が有効です。

+0

これは人々が 'each'で行う最も一般的な間違いの1つです。 – MitMaro

関連する問題