Javascript:在createElement之后移动新元素

Javascript: move new element after createElement

本文关键字:元素 新元素 移动 createElement 之后 Javascript      更新时间:2023-09-26

我已经在我的横幅div中创建了一个僵尸img,但是在创建后我无法让img向左移动。

创建僵尸函数在计时器上:

createZombieTimer = window.setInterval(createZombie, 1000);

这是在加载主体的 init() 中。

function createZombie(){
    var imgElem = document.createElement("img");
    imgElem.src = "img/zombie_walk_right.gif";
    var newZom = document.getElementById('banner').appendChild(imgElem);
    newZom.style.height = "40px";
    newZom.style.width = "auto";
    newZom.style.display = "block";
newZom.style.marginLeft = "50px";
    var zomPos = parseInt(newZom.style.marginLeft);
    if (zomPos > 0) {
        newZom.style.marginLeft = (zomPos + 50) + "px";
    }
}

由于现在从评论中可以清楚地看出您想做什么,因此我将在此处发布它作为答案。

你也可以用普通的javascript来做到这一点。您将要做的是使用setInterval()。这将每秒执行一个函数,您可以在其中更新元素的位置。

例:

// Function to move the zombie by 50 pixels
function moveZombie()
{
    // Select the zombie element (will need additional logic to select all of them, just an example)
    zomElement = document.getElementById('zombie1');
    zomPos = parseInt(zomElement.style.marginLeft);
    zomElement.style.marginLeft = (zomPos + 50) + 'px';
}
// Call this function every second
setInterval(moveZombie(), 1000);