匿名函数的参数问题

来源:3-4 图片自动轮播

Glxe_ge

2019-01-01 22:27:05

main.onmouseout = function (e) {
   timer = setInterval(function () {
       index++;
       if (index >= len) {
           index = 0;
       }

       changeImg();
       console.log(index);
   }, 5000)
};




main.onmouseout = function () {
   timer = setInterval(function () {
       index++;
       if (index >= len) {
           index = 0;
       }

       changeImg();
       console.log(index);
   }, 5000)
};



这两个函数就是一个带了e的函数一个没有,我是跟着老师的课敲的代码,为什么我提这个问题呢,因为编辑快捷输出第一个带参数的,我没在意,然后在运行时发现,控制台打印index的时候除了打第一个1是正常的,下面循环基本都是1201  这样4个蹦出来的,想问问是啥原因。不带e的参数肯定是正常的。

写回答

2回答

好帮手慕糖

2019-01-02

同学你好,这里测试,是可以按照时间输出的哦。建议:可以将你的全部代码粘贴过来,便于更加准确地的定位与解决问题。

祝学习愉快!

0

好帮手慕糖

2019-01-02

同学你好,是指有参数e的情况下,index的值输出错误是吗?e是event 对象,代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。后面的课程中也会使用到。

另,这里测试,index,还是一个个的输出的哦,例:

http://img.mukewang.com/climg/5c2c27620001896701430281.jpg

因为同学的代码不全,这里是使用源码进行测试的。同学可以在试一下,若还是有问题的话,同学可以将自己的代码全部粘贴过来,便于准确的定位与解决问题。

希望能帮助的你,祝学习愉快!

0
hlxe_ge
h 不是输出有误。是没有按每5s的速度输出。
h019-01-02
共1条回复

0 学习 · 36712 问题

查看课程