传递函数参数以更改div样式属性

时间:2015-02-11 07:47:17

标签: javascript

我一直试图解决这个问题:我想传递一个函数参数来选择一个div,这样我就可以用一个间隔来改变style.top的位置。

var yPos = 0;
var divOne = document.getElementById("div1");
var divTwo = document.getElementById("div2");
var divThree = document.getElementById("div3");
.....

function jump(which){
    yPos++;
    (which).style.top = yPos + "px";
    var jumpTimeOut = setTimeout(jump,100,which);
    if(yPos > 500){
    clearTimeout(jumpTimeOut);
    }
}

jump("divOne");

我可以为每个div变量使用switch语句,但是程序中有很多div,所以我想知道是否有一种方法可以将div名称与函数参数连接起来。有人说我得到的不能用当前代码改变NULL的属性样式。

感谢任何帮助

---->>我找到了一个解决方案,我传递了div名称字符串" div1"作为函数内部的参数,所以我可以使用内部变量再次获取div:

var divOne = document.getElementById("div1");
var divTwo = document.getElementById("div2");

function jump(which){
    var jumpingDiv = document.getElementById(which);
    yPos++;
    jumpingDiv.style.top = yPos + "px";
    var jumpTimeOut = setTimeout(jump,100,which);
        if(yPos > 500){
        clearTimeout(jumpTimeOut);
    }
}

jump("div1");
我认为奇怪的解决方案,但它的工作如此......呵呵。

0 个答案:

没有答案