Toggle navigation
在线编辑器
在线代码
文本比较
jQuery下载
前端库
在线手册
登录/注册
下载代码
html
css
js
分享到微信朋友圈
X
html
css
body { position: relative; width: 100vw; height: 100vh; display: -webkit-box; display: flex; -webkit-box-align: center; align-items: center; -webkit-box-pack: center; justify-content: center; background: #55b9f3; color: #c8deeb; overflow: hidden; } #button { z-index: 10; position: absolute; width: 40px; height: 40px; background: #55b9f3; border-radius: 50%; box-shadow: 6px 6px 12px #489dcf, -6px -6px 12px #62d5ff; cursor: pointer; } #button svg { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } #button.clicked { -webkit-animation: shadowFadeOut 200ms ease-out forwards, shadowFadeIn 200ms 300ms ease-in forwards; animation: shadowFadeOut 200ms ease-out forwards, shadowFadeIn 200ms 300ms ease-in forwards; } #button.clicked svg { -webkit-animation: fillFadeOut 200ms ease-out forwards, fillFadeIn 200ms 300ms ease-in forwards; animation: fillFadeOut 200ms ease-out forwards, fillFadeIn 200ms 300ms ease-in forwards; } .wave { z-index: 1; position: absolute; width: 20px; height: 20px; border-radius: 50%; box-shadow: 20px 20px 60px #489dcf, -20px -20px 60px #62d5ff; opacity: 0; -webkit-animation: fadeIn 400ms ease-out forwards, outside_grow 5s ease-out, fadeOut 3s 2s forwards; animation: fadeIn 400ms ease-out forwards, outside_grow 5s ease-out, fadeOut 3s 2s forwards; } .wave::after { content: ""; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 0px; height: 0px; border-radius: 50%; box-shadow: inset 20px 20px 60px #489dcf, inset -20px -20px 60px #62d5ff; -webkit-animation: inside_grow 5s ease-out; animation: inside_grow 5s ease-out; } @-webkit-keyframes outside_grow { from { width: 20px; height: 20px; } to { width: 900px; height: 900px; } } @keyframes outside_grow { from { width: 20px; height: 20px; } to { width: 900px; height: 900px; } } @-webkit-keyframes inside_grow { from { width: 0px; height: 0px; } to { width: 880px; height: 880px; } } @keyframes inside_grow { from { width: 0px; height: 0px; } to { width: 880px; height: 880px; } } @-webkit-keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } @-webkit-keyframes fadeOut { from { opacity: 1; } to { opacity: 0; } } @keyframes fadeOut { from { opacity: 1; } to { opacity: 0; } } @-webkit-keyframes shadowFadeIn { 0% { box-shadow: inset 6px 6px 12px #489dcf, inset -6px -6px 12px #62d5ff; } 50% { box-shadow: none; } 100% { box-shadow: 6px 6px 12px #489dcf, -6px -6px 12px #62d5ff; } } @keyframes shadowFadeIn { 0% { box-shadow: inset 6px 6px 12px #489dcf, inset -6px -6px 12px #62d5ff; } 50% { box-shadow: none; } 100% { box-shadow: 6px 6px 12px #489dcf, -6px -6px 12px #62d5ff; } } @-webkit-keyframes shadowFadeOut { 0% { box-shadow: 6px 6px 12px #489dcf, -6px -6px 12px #62d5ff; } 50% { box-shadow: none; } 100% { box-shadow: inset 6px 6px 12px #489dcf, inset -6px -6px 12px #62d5ff; } } @keyframes shadowFadeOut { 0% { box-shadow: 6px 6px 12px #489dcf, -6px -6px 12px #62d5ff; } 50% { box-shadow: none; } 100% { box-shadow: inset 6px 6px 12px #489dcf, inset -6px -6px 12px #62d5ff; } } @-webkit-keyframes fillFadeOut { from { fill: none; } to { fill: currentColor; } } @keyframes fillFadeOut { from { fill: none; } to { fill: currentColor; } } @-webkit-keyframes fillFadeIn { from { fill: currentcolor; } to { fill: none; } } @keyframes fillFadeIn { from { fill: currentcolor; } to { fill: none; } }
JavaScript
const $button = document.getElementById("button"); let debounce = false; $button.addEventListener("click", () => { if (debounce) return; debounce = true; buttonAnimate(); createWave(); }); const buttonAnimate = () => { $button.classList.add("clicked"); setTimeout(() => { $button.classList.remove("clicked"); debounce = false; }, 700); }; const createWave = () => { const wave = document.createElement("div"); wave.classList.add("wave"); document.body.appendChild(wave); setTimeout(() => wave.remove(), 7000); };
粒子
时间
文字
hover
canvas
3d
游戏
音乐
火焰
水波
轮播图
鼠标跟随
动画
css
加载动画
导航
菜单
按钮
滑块
tab
弹出层
统计图
svg
×
Close
在线代码下载提示
开通在线代码永久免费下载,需支付20jQ币
开通后,在线代码模块中所有代码可终身免费下!
您已开通在线代码永久免费下载,关闭提示框后,点下载代码可直接下载!
您已经开通过在线代码永久免费下载
对不起,您的jQ币不足!可通过发布资源 或
直接充值获取jQ币
取消
开通下载
<!doctype html> <html> <head> <meta charset="utf-8"> <title>波浪动画-jq22.com</title> <script src="https://www.jq22.com/jquery/jquery-1.10.2.js"></script> <style>
</style> </head> <body>
<script>
</script>
</body> </html>
2012-2021 jQuery插件库版权所有
jquery插件
|
jq22工具库
|
网页技术
|
广告合作
|
在线反馈
|
版权声明
沪ICP备13043785号-1
浙公网安备 33041102000314号