我想要做什麼應該是一些簡單的旋轉變換使用CSS轉換和轉換屬性時單擊一個元素,但是,旋轉似乎並沒有停留在其中新的位置。CSS旋轉變換不停留在新的位置
的HTML如下:
<div class="accordion-btn">
<span class="arrowGreen">></span> <a href="#">Show help</a>
</div>
我有一個箭頭設置如下的CSS轉換:
.arrowGreen {
-moz-transition: 0.5s ease-in-out;
-webkit-transition: 0.5s ease-in-out;
transition: 0.5s ease-in-out;
}
我然後應用使用這樣的jQuery的點擊功能轉換:
$(document).ready(function() {
$('.accordion-btn').click(function (e) {
e.preventDefault();
if ($(this).find('.arrowGreen').css('transform') != "rotate(90deg)")
{
$(this).find('.arrowGreen').css({ '-ms-transform': 'rotate(90deg)', '-moz-transform': 'rotate(90deg)', '-webkit-transform': 'rotate(90deg)', 'transform': 'rotate(90deg)' });
}
else
{
$(this).find('.arrowGreen').css({ '-ms-transform': 'rotate(-90deg)', '-moz-transform': 'rotate(-90deg)', '-webkit-transform': 'rotate(-90deg)', 'transform': 'rotate(-90deg)'});
}
}
這在一定程度上起作用。單擊元素時,跨度會旋轉,但是,當它達到90度時,它會自動回到默認狀態。它不會再點擊旋轉,但在開發人員工具中檢查時,轉換樣式仍會附加到元素。我錯過了什麼嗎?
由於提前, 亞倫
我試過這個,它的工作原理。然而,浮動並不適用於我的設計,但如果沒有它,旋轉仍會恢復爲默認值。然後我嘗試使跨度顯示內聯塊(因爲浮動使它阻塞我相信),這似乎已經修復它。似乎不喜歡我可以收集的內聯元素? – AaronUmhoefer 2014-10-08 11:55:07
@AaronUmhoefer:哦,我的道歉。 「內聯塊」跨度很好.. 對不起。無論如何,讓我更改代碼... :) – 2014-10-08 12:35:54