首頁 >web前端 >css教學 >CSS3動畫可以觸發回調嗎?

CSS3動畫可以觸發回調嗎?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-02 00:48:08598瀏覽

Can CSS3 Animations Trigger Callbacks?

CSS3 動畫可以觸發回調嗎?

與容易支援回呼的 JavaScript 動畫不同,CSS3 動畫最初缺乏此功能。不過,透過使用事件監聽器,現在可以實現 CSS3 動畫的回呼。

基於事件的回調實作

CSS3 實現回呼的關鍵就是將動畫辨識為可以監聽的事件。透過為相關 DOM 元素新增事件監聽器,您可以在動畫完成時執行回呼。

jQuery 事件綁定

使用jQuery,您可以將事件監聽器綁定到動畫元素如下:

$("#sun").bind('oanimationend animationend webkitAnimationEnd', function() { 
   alert("fin") 
});

這將事件偵聽器綁定到三種可能的事件類型: oanimationend、animationend 和webkitAnimationEnd。初始事件帶有供應商前綴,以確保與各種瀏覽器的兼容性。

純JavaScript 事件綁定

如果您不想使用jQuery,可以使用純JavaScript添加事件偵聽器:

element.addEventListener("webkitAnimationEnd", callfunction,false);
element.addEventListener("animationend", callfunction,false);
element.addEventListener("oanimationend", callfunction,false);

此方法達到相同的結果,但使用本機JavaScript程式碼。

演示和瀏覽器相容性

此回調實現的現場演示可在 http://jsfiddle.net/W3y7h/ 上找到。請注意,雖然大多數現代瀏覽器支援這些事件類型,但始終建議在實現回呼時檢查跨瀏覽器相容性。

以上是CSS3動畫可以觸發回調嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn