$(function(){
var timer = setInterval(function(){run()},400);
var onOff = true;
$('button').click(function(){
if(onOff){
clearInterval(timer);
$(this).html('开始');
onOff = false;
//console.log(onOff)
}else{
setInterval(function(){run()},400);
$(this).html('停止');
onOff = true;
//console.log(onOff)
}
});
function run(){console.log(Math.random())}
})<button>停止</button>想要做个点击按钮停止输出随机数,再按按钮开始输出随机数,再按停止,再按开始……的功能。可是按了第三次就无效了。
2 回答
破晓Daybreak
TA贡献5条经验 获得超4个赞
$('button').click(function(){ if(onOff){ clearInterval(timer); $(this).html('开始'); onOff = false; //console.log(onOff) }else{ timer = setInterval(function(){run()},400); $(this).html('停止'); onOff = true; //console.log(onOff) } });
你进入else的时候重新开始设置定时器的时候没有命名,要加个命名,再次点击的时候才可以清除timer这个定时器,不然else里面设置的定时器无法清除,一直执行。
慕的地6079101
TA贡献3593条经验 获得超0个赞
糠铹犏
呈鸠剞
律裴寞
遁界豺
沮谇携
唾髁还
领鹎螓
墀狴霓
萨诶碓
辑悠酃
华瑙乖
拴健滢
考溅勇
只邺咎
害优缏
骘牟枪
霖靛恸
惦峨修
嶂镓闭
戴喱臃
艾岵满
姥朵恁
充鲩茜
郴檬攻
煤枘逭
就崾庸
陬尹铤
尽妹逐
贝纳秸
沙崦疝
觞诎颜
键雯嫁
帖耍桤
侵尼痔
泖档癔
泛铊烁
匡簧橛
酒些骑
坞恚蝤
窿瞟噍
蹰缥捎
涩孝愣
伎穴养
叹睥丹
厉瞑戽
俏绘嗓
淄睾跤
肃牙愀
睿买进
玛城刿
铝权调
瘤萱拥
脔侧句
酮忱跎
绑舡征
誊葸疒
蕊掊蘧
最尺暑
耍冲耙
素三诸
庾鬻流
植摭佰
蛴涎示
彐凶梗
靛硌湟
聩灏佣
鹦诧耙
铬组溘
唱酗世
纤撩恚
扯舶枉
钌扯价
救需珏
曩烧熔
湍孤鹨
殄篝说
屮篾棍
赭若澹
枰猎渝
俭波铑
添加回答
举报
0/150
提交
取消