为了账号安全,请及时绑定邮箱和手机立即绑定

js加载函数问题

js加载函数问题

qq_天蝎的尾巴卍_0 2016-11-24 17:12:47
var i = 1; window.onload = function () { //获取img对象                var imgObj = document.getElementById("imgObj"); //设置定时器 var timer = setInterval("start()",3000); } /*实现图片轮播的方法*/ function start() { imgObj.src = "img/"+i+".jpg"; i++; if (i==6) { i = 1; } }start() 为什么放在window.onload函数外面运行才行?
查看完整描述

3 回答

?
qq_青枣工作室_0

TA贡献446条经验 获得超754个赞

你的

var timer = setInterval("start()",3000);

里面"start()"是字符串,表示执行一段在全局运行的代码,所以要在onload函数外面定义start(){}。

改为:

var timer = setInterval(start, 3000); 

里面的start直接就是函数名,这样就可以把start(){}放在onload里面了。

查看完整回答
5 反对 回复 2016-11-24
?
小草1434

TA贡献106条经验 获得超23个赞

setInterval("start()",3000); 

setInterval函数里面的两个变量分别是字符串和数字类型,而function函数的返回值不是字符串(没有renturn ""+i),所以会报错

所以在js中如果报错就果断运行不了。

查看完整回答
1 反对 回复 2016-11-24
?
慕盖茨9219292

TA贡献2条经验 获得超0个赞

赞同楼上

查看完整回答
反对 回复 2016-11-24
  • 3 回答
  • 1 关注
  • 1348 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信