說我有一個元素,我想在懸停狀態下對其進行更改。如何使用jQuery爲僞類生成動畫或計時
使用Pseudo
類將是這樣的:
#element:before { background-position: 0px -50px; }
#element:hover:before { background-position: -50px -50px; }
我可以實現一個jQuery animation
功能呢?還是我可以爲其轉換計時?
說我有一個元素,我想在懸停狀態下對其進行更改。如何使用jQuery爲僞類生成動畫或計時
使用Pseudo
類將是這樣的:
#element:before { background-position: 0px -50px; }
#element:hover:before { background-position: -50px -50px; }
我可以實現一個jQuery animation
功能呢?還是我可以爲其轉換計時?
這對jQuery來說是不可能的。
創建者:after或:before不是DOM的一部分,因此不能被選擇或修改。
- (source)
你可以在你的CSS才達到的過渡效果利用這一點,但這不會在舊的瀏覽器工作:
#element:before {
-webkit-transition: background-position 1s linear;
-moz-transition: background-position 1s linear;
-o-transition: background-position 1s linear;
-ms-transition: background-position 1s linear;
transition: background-position 1s linear;
}
非常感謝。關於僞類,這是信息。我將使用CSS轉換:( –
)在你的例子中,它使用類來重新定位一個也可以是解決方案的元素,正如@ DJDavid98所寫的那樣,重要的是前後都不是DOM的一部分,因此不能修改 –
@Lior不完全是這樣的,你不需要在元素上使用類,我只是用它來設計它的樣式。 – Charlie
它使用animation()函數並且工作正常但是不用操作僞類。prev()函數用於追蹤每個元素的前一個元素,但不會超過這個元素。無論如何,非常感謝您花時間去處理它。 –
你嘗試$( 「#元素:之前」)。動畫()? – Charlie
是的,沒有工作。 –
是不是使用PURE CSS解決方案比較好? –