我基本上有一個區域,可以通過點擊選擇或取消選擇。它有一個未選中狀態,懸停狀態與選定狀態相匹配,因此用戶可以獲得關於點擊的提示。轉換類懸停狀態,維持一段時間的舊狀態
同樣,當選擇時,hoverstate匹配未選擇的狀態。
下面是與選定的是「綠色」的一個例子:
.clicker { //standard state
width: 100px;
height: 100px;
background-color: red;
}
.clicker:hover {
background-color: green;
}
.green { // selected state
background-color: green;
}
.green:hover {
background-color: red;
}
的問題是,當用戶點擊,它立即從非選擇懸停選擇懸停轉彎,所以它看起來有點像他們未點擊它。
我希望有一段時間項目保持它的舊hoverstate,也就是說,它是未選定的(紅色),我懸停,它變成綠色,我點擊它,jQuery在後臺添加選定的/綠色狀態,但儘管如此,該區域保持綠色一秒鐘,而不是立即去選擇hoverstate(即顯示紅色)。
我想過使用一個簡單的(非)的動畫,是這樣的:
@keyframes holdGreen {
0% {
background-color: green;
}
99% {
background-color: green;
}
100% {
background-color: red;
}
}
而且地方把
animation: holdGreen
animation-duration: 1s
和類似holdRed時,我點擊選擇一個取消選擇。
如果它只是一個具有懸停狀態的類,但它在完全更改/添加也具有懸停狀態的類時不起作用。
任何想法?