varnum=null;vartimer=null;if(num!=null){setInterval(function(){show(num);},500);}else{num=$("a:first");timer=setInterval(function(){show(num);},30);}$("a").on("click",function(){clearInterval(timer);num=$(this);});我想点击的时候更新num的值来释放if里的代码,要怎么改让他第一次加载是走else里的,当点击后就走if里的,我这里个if和else里都是用定时器去更新数据的而else里是默认显示第一个对象的数据
2 回答
翻过高山走不出你
TA贡献1875条经验 获得超3个赞
varnum=$("a:first");vartimer=setInterval(function(){show(num);},30);$("a").on("click",function(){if(timer){clearInterval(timer);}num=$(this);if(num!=null){setInterval(function(){show(num);},500);}});楼主,你要的是这种么?这段代码加载的时候,首先给了默认num,然后定时器,然后点击a的时候清除定时器,然后复制num然后继续定时器。如果我理解对的话0.0
慕哥9229398
TA贡献1877条经验 获得超6个赞
既然num已经是全局对象的话就没必要用传参的形式了吧。线性函数代码过了就是过啦,封装成函数之后才能重复调用嘛……varnum=null;vartimer=null;(functionshowItem(){if(timer!=null)clearInterval(timer);if(num!=null)setInterval(show,500);else{num=$("a:first");timer=setInterval(show,30);}})();$("a").on("click",function(){num=$(this);showItem();});
添加回答
举报
0/150
提交
取消