【发布时间】:2020-12-12 03:59:57
【问题描述】:
我想实现点击按钮时数字增加的间隔。
有多个按钮和一个元素,数量越来越多。
问题是,如果我在间隔期间单击另一个按钮,我无法停止已经在进行的间隔。
请帮帮我。
HTML
<ul>
<li><a href="javascript:;" class="btn" data-length="3">1</a></li>
<li><a href="javascript:;" class="btn" data-length="8">2</a></li>
<li><a href="javascript:;" class="btn" data-length="5">3</a></li>
</ul>
<div class="counter">0</div>
JS
const interval = (e) => {
setTimeout(() => {
$('.counter').html(e)
}, 500 * e);
}
$('.btn').on('click', function(){
var $this = $(this),
length = $this.data('length');
for (let i = 1; i <= length; i++) {
(function(e){
interval(e)
})(i)
}
})
【问题讨论】:
标签: javascript html jquery settimeout