2013-10-05 3 views
1

изображение 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'; 
} 

, как я это делаю

ответ

0

Вы установили слева 0px в состоянии покоя() и поэтому он будет слева. Если вы не хотите отображать его слева, вам нужно добавить img.style.left = '<> px', например. img.style.left = '150px' в функции reappearch().

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

Проверить эту скрипку ... jsfiddle

0

Вы можете использовать img.style.display и установить это "none", то вам не нужно, чтобы изменить изображение и установить позицию абсолютного:

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

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

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

Удачи ...

Смежные вопросы