2016-04-06 4 views
4

В этом случае элемент скрывается в одном. Не могу понять, почему он сначала не показывает тег «P», а затем медленно скрывает его. Пожалуйста, помогите мне решить проблему.Скрыть элемент с задержкой

var step = 0.1; 
 
var delay = 90000; 
 
var displayMe = function() { 
 
    if (element.style.opacity < 1) { 
 
    element.style.opacity += step; 
 
    setTimeout('displayMe()', delay); 
 
    } 
 
} 
 

 
var hideMe = function() { 
 
    var elem = document.getElementById('regform'); 
 
    if (elem.style.opacity >= 0) { 
 
    elem.style.opacity -= step; 
 
    setTimeout('hideMe()', delay); 
 
    } 
 
} 
 

 
hideMe();
<p id="regform">aaaaaaaaaaaaaaaaa</p>

ответ

2

Element.style.prop будет читать только встроенные стили. Определить style='opacity:1' для <p> элемент.

var step = 0.1; 
 
var delay = 1000; 
 

 
var displayMe = function() { 
 
    if (element.style.opacity < 1) { 
 
    element.style.opacity += step; 
 
    setTimeout(displayMe, delay); 
 
    } 
 
} 
 

 
var hideMe = function() { 
 
    var elem = document.getElementById('regform'); 
 
    if (elem.style.opacity >= 0) { 
 
    elem.style.opacity -= step; 
 
    setTimeout(hideMe, delay); 
 
    } 
 
} 
 

 
hideMe();
<p id="regform" style='opacity:1'>aaaaaaaaaaaaaaaaa</p>

0

Попробуйте

document.getElementById('regform').style.opacity=1; 
var hideMe = function() 
{ 
    var elem = document.getElementById('regform'); 
    if(elem.style.opacity>0) 
    { 
     elem.style.opacity-= step; 
     setTimeout(hideMe, delay); 
    } 
} 
hideMe(); 

Fiddle

0

Попробуйте с JQuery:

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script> 
 
<script type="text/javascript"> 
 
     $(document).ready(function() { 
 
     $('#regform').delay(1000).fadeOut(2000); 
 
     }); 
 
</script> 
 

 
<p id="regform" style='opacity:1'>aaaaaaaaaaaaaaaaa</p>

Documentation .fadeOut()

+0

мне нужно только изменения в коде. Цель состоит в использовании чистого javascript. – Maria

+0

Хорошо, я тебя понимаю. Удалить ответ? –

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