无法使用setInterval函数移动对象

时间:2014-10-02 19:08:39

标签: javascript

我想通过单击按钮进行矩形移动,然后单击相同的按钮停止它。这是我的代码的一部分:

document.getElementById("startStop").addEventListener("click", changePlace);

function changePlace() {
nIntervMove = setInterval(movement, 100);
};


var tmp1 = 0; 
function movement() {
  var oElem = document.getElementById("colorRectangular");
  oElem.getPropertyValue = tmp1;
  tmp1 += "10px";
 };

 function stopMove(){
     clearInterval(nIntervMove);
 };

1 个答案:

答案 0 :(得分:0)

非常直接:

var makeMove = function(x, hx, t, complete) {

    var target = document.getElementById('rect'),
        dx = 0,
        d = setInterval(function() {
            target.style.left = dx + "px";
            dx += hx;
            if(dx >= x) {
                clearInterval(d);
                complete();
            }

        }, t);
};

makeMove(100, 5, 500, function() {
    alert('done'); 
});

JSFiddle:http://jsfiddle.net/8ay9cqmd/