使用jQuery.animate() 進行跨瀏覽器CSS 旋轉
問題:
執行使用jQuery.animate() 的CSS 旋轉動畫無法跨瀏覽器運作。使用 .css() 時旋轉有效,但使用 .animate() 時則無效。
原因:
CSS-Transforms 無法直接使用 jQuery 進行動畫處理。
解決方案:
執行使用 jQuery 進行 CSS-Transform動畫,可以使用以下替代方法:
function AnimateRotate(angle) { var $elem = $('#MyDiv2'); $({deg: 0}).animate({deg: angle}, { duration: 2000, step: function(now) { $elem.css({ transform: 'rotate(' + now + 'deg)' }); } }); }
說明:
此方法使用自定義的“step”回調函數來更新動畫每個步驟中所選元素的“transform”屬性。 「step」函數會接收目前動畫位置(現在)作為參數,您可以使用它來計算所需的旋轉角度。
外掛程式:
您可以將此方法封裝到 jQuery插件中方便使用:
$.fn.animateRotate = function(angle, duration, easing, complete) { return this.each(function() { var $elem = $(this); $({deg: 0}).animate({deg: angle}, { duration: duration, easing: easing, step: function(now) { $elem.css({ transform: 'rotate(' + now + 'deg)' }); }, complete: complete || $.noop }); }); };
用法:
要使用插件,您只需呼叫:
$('#MyDiv2').animateRotate(90);
更新:
提供的解決方案已更新多次,以提高效率並提供更多靈活性。
- 更新 2:最佳化以使參數的順序無關緊要。
- 更新 2.1:修正了上下文問題完成回調。
- 更新2.2:新增了切換動畫的啟動參數。
其他使用詳細資訊:
- animateRotate 函數接受多個選用參數,包括持續時間、緩動和完整,並提供預設值。
- 使用者可以透過多種方式提供這些參數,無論是位置參數參數或作為物件。
- 「step」函數提供對每個動畫步驟的旋轉的額外控制。
以上是如何使用 jQuery 實作跨瀏覽器 CSS 旋轉動畫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

React生態系統為我們提供了許多庫,所有庫都集中在拖放的相互作用上。我們有反應,反應,可愛dnd,

我可以說我經常使用背景折疊。 IT Wager IT幾乎從未在日常CSS工作中使用。但是在斯特凡·朱迪斯(Stefan Judis)的帖子中,我想起了它,

使用RequestAnimationFrame進行動畫化應該很容易,但是如果您還沒有徹底閱讀React的文檔,那麼您可能會遇到一些事情

聽著,我不是GraphQL專家,但我確實喜歡與之合作。作為前端開發人員,它向我曝光數據的方式非常酷。它就像一個菜單


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Dreamweaver CS6
視覺化網頁開發工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

禪工作室 13.0.1
強大的PHP整合開發環境

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中