首頁 > web前端 > css教學 > 如何使用 jQuery 和 CSS 動畫製作 Box-Shadow 動畫?

如何使用 jQuery 和 CSS 動畫製作 Box-Shadow 動畫?

Linda Hamilton
發布: 2024-11-03 04:43:31
原創
507 人瀏覽過

How to Animate Box-Shadow with jQuery and CSS Animations?

如何使用jQuery 對Box-Shadow 進行動畫處理

要使用jQuery 對box-shadow 屬性進行動畫處理,您可以使用jQuery 插件提供的.animate() 方法來實現陰影動畫,該方法擴展了.animate 方法。

直接回答

正確的語法如下:

$(element).animate({ 
    boxShadow: "0px 0px 5px 3px hsla(100, 70%, 60%, 0.8)"
}) 
登入後複製

此程式碼將為框陰影的每個方面設定動畫:顏色、x 和y 偏移、模糊-radius 和spread-radius。

改用 CSS 動畫

您可以選擇使用 CSS 動畫而不是直接使用 jQuery 處理動畫。這有助於防止意外情況,並將樣式資訊保留在樣式表中。

以下是您可以在樣式表中定義的CSS 動畫範例:

<code class="css">@keyframes shadowPulse {
    0% {
        box-shadow: 0px 0px 10px 0px hsla(0, 0%, 0%, 1);
    }

    100% {
        box-shadow: 0px 0px 5px 0px hsla(0, 0%, 0%, 0);
    }
}
    
.shadow-pulse {
    animation-name: shadowPulse;
    animation-duration: 1.5s;
    animation-iteration-count: 1;
    animation-timing-function: linear;
}</code>
登入後複製

然後您可以使用animationend 事件將動畫的結束與JS 程式碼同步。

Vanilla JS:
<code class="js">element.classList.add('shadow-pulse')
element.addEventListener('animationend', event => {  
    element.classList.remove('shadow-pulse')
    // do something else...
})</code>
登入後複製

jQuery:

<code class="js">$(element).addClass('shadow-pulse')
$(element).on('animationend', function(){    
    $(element).removeClass('shadow-pulse')
    // do something else...
})</code>
登入後複製

以上是如何使用 jQuery 和 CSS 動畫製作 Box-Shadow 動畫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板