簡體   English   中英

如何在懸停時將元素旋轉150度超過150度?

[英]How do I rotate an element to 180 deg over 150 ms on hover?

鼠標懸停時,我需要在150ms的間隔內逆時針旋轉一個元素180˚,然后在鼠標移出時我需要將元素逆時針旋轉回原來的0˚超過150ms。

我願意使用CSS3,jQuery和JavaScript。

我使用Chrome,但我還需要讓它適用於Firefox和Safari。 不太擔心IE。

使用CSS3 transformtransition和Javascript來添加/刪除類。

演示: http//jsfiddle.net/ThinkingStiff/AEeWm/

HTML:

<div id="rotate">hover me</div>

CSS:

#rotate {
    border: 1px solid black;
    height: 100px;
    width: 100px;
}

.over {
    transform: rotate( -180deg );            
    transition: transform 150ms ease;
}

.out {
    transform: rotate( -360deg );            
    transition: transform 150ms ease;
}
​

腳本:

var rotate = document.getElementById( 'rotate' );

rotate.addEventListener( 'mouseover', function () {

    this.className = 'over';

}, false );

rotate.addEventListener( 'mouseout', function () {

    var rotate = this;

    rotate.className = 'out';
    window.setTimeout( function () { rotate.className = '' }, 150 );

}, false );

​

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM