0

我想动画一个对象(在我的例子中,一个div),从左到右移动100px,使用JUST javascript(不允许JQuery)。

这是我的代码http://pastebin.com/HvNjQES0

function move(elem) {
    var st = 0;
    console.log("ELEM " + elem);

    function animate() {
        st++;
        console.log(st);
        elem.style.left = st + 'px';
        console.log("elem" + elem.style.left);
        if (st == 100) // check finish condition
            clearInterval(id)
    }
    id = setInterval(animate, 10);
}

HTML:

<button onclick="move(text_ex)">Click</button>       
<div id="text_ex" style="width:100px; height:100px; background-color:red"></div>

我的代码有什么问题(它不起作用)?

欢迎任何其他解决方案。

4

2 回答 2

1

首先,如果要启用div可移动,则需要将其display样式设置为absoluterelative

其次,在你的动画功能中,你需要通过document.getElementById(elem)";

于 2013-03-24T15:02:49.220 回答
1

添加position:absolute到您的 div 中,它会像魅力一样工作。

于 2013-03-24T15:02:23.263 回答