Toggle navigation
在线编辑器
在线代码
文本比较
jQuery下载
前端库
在线手册
登录/注册
下载代码
html
css
js
分享到微信朋友圈
X
html
css
body { background-color: #000; overflow: hidden; text-align:center; display: flex; align-items: center; justify-content: center; } body, html { height: 100%; width: 100%; margin: 0; padding: 0; } svg { width: 100%; height: 100%; visibility: hidden; } .desat { filter:url(#desat) }
JavaScript
var App = /** @class */ (function () { function App() { var _this = this; this.select = function (e) { return document.querySelector(e); }; this.selectAll = function (e) { return document.querySelectorAll(e); }; this.mainTl = new TimelineMax(); this.dot = this.select('.dot'); var dotArray = []; var container = this.select('.container'); var num = 260; var stageWidth = 600; var stageHeight = 600; var mainCircleRadius = 220; var duration = 8; var colorArray = ["#364C62", "#F1C40F", "#E67E22", "#E74C3C", "#ECF0F1", "#95A5A6", "#16A085", "#27AE60", "#2980B9", "#8E44AD", "#2C3E50", "#F39C12", "#D35400", "#C0392B", "#BDC3C7", "#1ABC9C", "#2ECC71", "#E87AC2", "#3498DB", "#9B59B6", "#7F8C8D"]; var step = 360 / num; var tl = new TimelineMax(); this.mainTl.add(tl); for (var i = 0; i < num; i++) { var clone = this.dot.cloneNode(true); container.appendChild(clone); var angle = step * i; var point = { x: (Math.cos(angle * Math.PI / 180) * mainCircleRadius) + stageWidth / 2, y: (Math.sin(angle * Math.PI / 180) * mainCircleRadius) + stageHeight / 2 }; TweenMax.set(clone, { x: stageWidth, y: this.randomBetween((stageHeight / 2) - 30, (stageHeight / 2) + 30), attr: { r: this.randomBetween(1, 3) / 10 }, fill: colorArray[i % colorArray.length], alpha: 1, transformOrigin: '50% 50%' }); dotArray.push(clone); } TweenMax.set('#portalContainer', { skewX: 50, x: 20, y: -36, rotation: 70, transformOrigin: '50% 50%', scale: 0.28 }); TweenMax.set('#greyPortalContainer', { skewX: 50, x: 20, y: -36, rotation: 70, transformOrigin: '50% 50%', scale: 0.28 }); TweenMax.set('.hoop', { rotation: 180, transformOrigin: '50% 50%' }); TweenMax.to('#portal', 1.5, { rotation: -360, repeat: -1, ease: Linear.easeNone, transformOrigin: '50% 49%' }); tl.staggerFromTo(dotArray, 1, { cycle: { scale: function (i, el) { var s = _this.randomBetween(10, 100) / 10; var a = s / 10; el.setAttribute('data-scale', s); return s; } } }, { cycle: { scale: function (i, el) { return Number(el.getAttribute('data-scale')); }, duration: function (i, el) { return 12 - Number(el.getAttribute('data-scale')); }, repeatDelay: function () { return 0; }, y: function () { return _this.randomBetween((stageHeight / 2) - 30, (stageHeight / 2) + 30); } }, x: 0, onUpdate: function (e) { if (e.progress().toFixed(1) == 0.5) { e.target.classList.add('desat'); } else if (e.progress().toFixed(1) == 0) { e.target.classList.remove('desat'); } }, onUpdateParams: ["{self}"], repeat: -1, ease: Linear.easeNone }, 0.006); this.mainTl.seek(1000); } App.prototype.randomBetween = function (min, max) { return Math.floor(Math.random() * (max - min + 1) + min); }; return App; }()); TweenMax.set('svg', { visibility: 'visible' }); var app = new App();
粒子
时间
文字
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号