Toggle navigation
在线编辑器
在线代码
文本比较
jQuery下载
前端库
在线手册
登录/注册
下载代码
html
css
js
分享到微信朋友圈
X
html
Step 1
just do it
Step 2
yesterday you said tomorrow
Step 3
just do it
Step 4
make your dreams come true
css
body { background: #d33144; } .process { width: 800px; margin: 3em auto; cursor: default; } .process-items { display: table; margin: 0 0 10px; padding: 0; list-style-type: none; color: #fff; font-size: 18px; text-align: center; } .process-items li { display: table-cell; width: 25%; vertical-align: bottom; padding: 0 .5em; -webkit-transform: scale(0.65) translateY(40px); transform: scale(0.65) translateY(40px); -webkit-transform-origin: bottom center; transform-origin: bottom center; transition: -webkit-transform .5s; transition: transform .5s; transition: transform .5s, -webkit-transform .5s; } .process-items li.active { -webkit-transform: scale(1) translateY(0); transform: scale(1) translateY(0); } .process-items em { display: block; margin-top: .5em; }
JavaScript
var process = $('.process'); var canvas = document.getElementById('canvas'); var ctx = canvas.getContext('2d'); var SECTION_WIDTH = 200; var sections = []; var create = function(start) { var section = { start: start, width: SECTION_WIDTH, height: 45, hMax: 35, hMod: 0, progress: 0, dot: { x: 0, y: 0 } }; section.end = section.start + section.width; section.dot.x = section.start + section.width/2; section.dot.y = section.height; sections.push(section); }; var draw = function(s) { var wMod = s.width * 0.3; ctx.beginPath(); ctx.moveTo(s.start, s.height); ctx.bezierCurveTo( s.start+wMod, s.height, s.start+wMod, s.height - s.hMod, s.start + s.width/2, s.height - s.hMod ); ctx.bezierCurveTo( s.end-wMod, s.height - s.hMod, s.end-wMod, s.height, s.end, s.height ); ctx.lineWidth = 4; ctx.strokeStyle = 'white'; ctx.stroke(); ctx.beginPath(); ctx.fillStyle = 'white'; ctx.arc(s.dot.x, s.dot.y, 8, 0, Math.PI * 2); ctx.fill(); }; function quad(progress) { return Math.pow(progress, 2); } function makeEaseOut(delta) { return function(progress) { return 1 - delta(1 - progress); } } var quadOut = makeEaseOut(quad); var bend = function(s) { if(s.progress < s.hMax) { var delta = quadOut(s.progress/s.hMax); s.hMod = s.hMax*delta; s.dot.y = s.height - s.hMax*delta; s.progress++; } }; var reset = function(s) { if(s.progress > 0) { var delta = quadOut(s.progress/s.hMax); s.hMod = s.hMax*delta; s.dot.y = s.height - s.hMax*delta; s.progress -= 2; } else { s.hMod = 0; s.dot.y = s.height; s.progress = 0; } }; var currentSection = 0; process.on('mousemove', function(event) { var section = Math.floor((event.clientX - process.offset().left) / SECTION_WIDTH); currentSection = section; process.find('.active').removeClass('active'); process.find('li').eq(section).addClass('active'); }); create(0); create(200); create(400); create(600); var loop = function() { ctx.clearRect(0, 0, canvas.width, canvas.height); sections.forEach(function(s, index) { if(currentSection === index) { bend(s); } else { reset(s); } draw(s); }); window.requestAnimationFrame(loop); }; loop();
粒子
时间
文字
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号