Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 超时后,图像不会重新出现在其正确的位置_Javascript_Html_Timeout - Fatal编程技术网

Javascript 超时后,图像不会重新出现在其正确的位置

Javascript 超时后,图像不会重新出现在其正确的位置,javascript,html,timeout,Javascript,Html,Timeout,ch图像消失,但当它再次出现时,它会从右向左移动 function rest() { img = document.getElementById('ch'); img.style.position= 'absolute'; img.style.top = '0px'; img.style.left = '0px'; img.style.visibility='hidden'; setTimeout(function(){reappearch()},3000); } function reapp

ch图像消失,但当它再次出现时,它会从右向左移动

function rest()
{
img = document.getElementById('ch');
img.style.position= 'absolute';
img.style.top = '0px';
img.style.left = '0px';
img.style.visibility='hidden';

setTimeout(function(){reappearch()},3000);
}
function reappearch(){
img = document.getElementById('ch');
img.style.visibility='visible';
}

我该怎么做呢

您已经在rest()中将left设置为0px,所以它将位于左侧。如果不想将其显示在左侧,则需要在repearch()函数中添加img.style.left='px',例如img.style.left='150px'

function reappearch() {
    img = document.getElementById('ch');
    img.style.visibility = 'visible';
    img.style.left = '120px';
}

选中此小提琴…

您可以使用
img.style.display
并将其设置为
“无”
,这样您就不需要重新定位图像并将位置设置为绝对:

function rest() {
    img = document.getElementById('ch');
    img.style.display = 'none';

    setTimeout(function () {
        reappearch()
    }, 3000);
}

function reappearch() {
    img = document.getElementById('ch');
    img.style.display = 'block';
}
祝你好运