2009-08-16 69 views
0

我頭痛地嘗試做這件事:我有一個<a>元素,使用style =「」屬性定義的圖像,並且我已經提供了一個函數,用於處理具有不透明度更改的懸停效果的不同背景位置的<元素元素<範圍>。問題是,我需要得到相同的樣式屬性的每個 <一個>元素每個孩子<跨度>但只有第一個背景圖像被複制到所有的<跨度>元素,即使使用$( 「span.hover」)。parent()。attr(「style」) as selector!jQuery - .each()僅返回第一個元素屬性,需要存儲每個元素屬性並在每個子元素中使用

http://pastebin.me/ac4cc52af64f6e831366ca61c7bbe63b

在上面,你可以看到它的樣子,看到它正常工作。

+0

Omg,非常感謝Greg!我花了整整一晚的時間來弄清楚這一點,我即將放棄!謝謝! – Samuel 2009-08-16 13:41:51

+0

我已經優化了腳本並刪除了幾行,現在它工作的很快,IE8正確渲染 - http://pastebin.me/c421b31f354f6630dd71cc5dff95665d – Samuel 2009-08-16 15:40:02

回答

4

此:

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

應該

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

你重新獲得每一次,它給你的第一個所有的跨度。

測試&工作。

+0

這是人們用'each'所做的最常見的錯誤之一。 – MitMaro 2009-08-16 13:23:31

相關問題