欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

如何用javaScript創建關鍵幀動畫?

錢衛國2年前8瀏覽0評論

我想創建一個響應用戶顯示高度的動畫。我在javaScript中創建了一個存儲文檔高度的變量,但是我不知道如何在javaScript中創建一個關鍵幀動畫來允許be使用這個變量。

例如,如果我想用javaScript創建這個關鍵幀動畫,我該怎么做。

@keyframes fadeIn {
    from{
        opacity:0%;
        
    }

    to{
        opacity:100%;
        
    }
    
}

你可以去任何js動畫庫。我會推薦GSAP (GreenSock動畫平臺)或者anime.js

例如,在GSAP你可以完成這樣的事情:

var element = document.querySelector('.myElement');

gsap.to(element, {
  duration: 2,
  keyframes: [
    { opacity: 0, scale: 0 },
    { opacity: 1, scale: 1.2 },
    { opacity: 1, scale: 1 }
  ],
  repeat: -1 // Repeat indefinitely
});

也可以看看anime.js。它們提供了各種高級css動畫屬性。

你也可以從另一個角度來解決這個問題。 您可以像這樣在關鍵幀中使用CSS變量

@keyframes maxHeightAnimated{
    from{
        max-height: 0;
    }
    to{
        max-height: var(--document-height)
    }
}

然后你可以在任何時候通過你的JS動態地設置CSS變量的值:

document.addEventListener("DOMContentLoaded", () => {
    let r = document.querySelector(':root')
    r.style.setProperty('--document-height',document.body.offsetHeight + 'px')
    $(window).on('resize', () => {
        let r = document.querySelector(':root')
        r.style.setProperty('--document-height',document.body.offsetHeight + 'px')
    });
}

在這個例子中,我在document loaded和window resize事件上設置了這個值。什么保證文檔高度總是包含實際高度