使简单的js小提琴动画在按钮单击而不是页面加载时开始
Make simple js fiddle animation start on button click instead of page load.
我发现这个相当酷的Js小提琴,并且一直在编辑动画,并认为它可以在当前项目中使用。然而,我不是最好的Javascript。要完成其余目标,我真正需要知道的是如何使动画在单击按钮之前不会启动。
这是js小提琴的动画。
http://jsfiddle.net/apipkin/qUTwQ/
这是 css。
#o {
width: 200px;
height: 400px;
position: relative;
border-bottom: 1px solid blue;}
.bubble {
border: 1px solid
#f40009; display: block;
position: absolute;
border-radius: 20px;
-webkit-border-radius: 20px;
-moz-border-radius: 20px;
}
其余的都在JS小提琴中。
谢谢你的任何帮助!
您可以简单地将其包装在一个函数中,然后在单击时调用该函数。
演示
创建一个按钮:
<button id="btn">Click</button>
而这个js:
document.getElementById('btn').addEventListener('click', startAnimation);
function startAnimation() {
YUI().use('node', 'anim', 'anim-node-plugin', function(Y) {
var o = Y.one('#o'),
oW = o.get('offsetWidth'),
oH = o.get('offsetHeight'),
max = 12,
min = 4,
bubbles = 20,
timerDelay = 4000;
function makeBubble() {
var b = Y.Node.create('<span class="bubble"></span>');
b.plug(Y.Plugin.NodeFX, {
duration: 7,
easing: Y.Easing.easeOut,
to: {
top: 0,
opacity: 0
},
on: {
end: function() {
Y.later(10000, this, function(){
animBubble(this.get('node'));
});
}
}
});
o.append(b);
animBubble(b);
}
function animBubble(b) {
var v = Math.floor(Math.random() * (max - min)) + min;
b.setStyles({
height: v + 'px',
width: v + 'px',
borderRadius: v + 'px',
top: (oH + 2) + 'px',
opacity: 1
});
b.setStyle('left', Math.floor(Math.random() * (oW - v)));
b.fx.set('duration', Math.floor(Math.random() * 2 + 3));
b.fx.set('to.top', Math.floor(Math.random() * (oH / 2)));
b.fx.run();
}
for (i = 0; i < bubbles; i++) {
Y.later(Math.random() * timerDelay, this, function() {
makeBubble();
});
}
});
}
相关文章:
- 在HTML/JavaScript中,有没有一种方法可以在图像开始加载时知道图像的最终布局尺寸
- Yii2从点击链接开始加载模式
- d3转换从页面加载开始,而不是从模式弹出加载开始
- 如何开始预加载同一视频的多个部分/章节
- 如何从某个时间开始预加载HTML5视频
- 是否可以在页面开始加载之前显示加载gif/image
- Javascript从页面加载开始计数-需要使用ajax重置
- 正在加载动态日历以在一个月的正确日期开始
- 在JQuery中,'加载'方法'的相对路径在引用项目中的html文件时开始
- 如果在一段时间不活动后4秒内开始加载,如何刷新我的网站
- 在JavaScript中,如何等待动态注入的脚本在开始使用之前加载
- 加载页面时开始下载文件
- 如果我重新加载页面,倒计时将重新开始 - 如何设置修复
- 幻灯片在加载图像时开始,但在下载所有图像之前不会显示第一个图像
- 谷歌地图在一开始正确加载后会变成灰色
- 获取页面加载时间从 JavaScript 开始
- 切片图层加载开始和结束时的传单火灾事件
- 延迟元素的加载开始
- 在绘图/加载开始时,仅在高位图表中显示一个系列数据
- 我怎么能禁用我的标题在amcharts从加载开始