简单setInterval函数中的SyntaxError

时间:2013-10-21 15:45:16

标签: javascript setinterval

我想在2秒的循环中开始在鼠标悬停时更改div的背景颜色 所以html代码:

<div onmousemove="start_loop(this)"></div>

和javascript函数:

function start_loop(theDiv) {
    ms = setInterval("changeBg("+theDiv+")", 2000);
}

但是我收到了这个错误:

SyntaxError: missing ] after element list

start_loop([object HTMLDivElement])

2 个答案:

答案 0 :(得分:0)

theDiv不是字符串,它是一个DOM元素,因此使用字符串连接不会做任何有用的事情。尝试:

var ms;

function start_loop(theDiv) {
    if (!ms) {
        ms = setInterval(function() {
            changeBg(theDiv);
            }, 2000);
    }
}

答案 1 :(得分:0)

您可以在setInterval.Thats it

中使用匿名函数
functionstart_loop(param){
//some code
}

 ms=setInterval( function() { loop(param) }, 2000);