Я пытаюсь сделать кнопку показать вернуть тег h1, но он останавливается после достигающего непрозрачности: 0,1 вместо того, чтобы продолжать вплоть до непрозрачности: 1.JavaScript: Set Interval работает только один раз?
Я попытался отладки на Firebug в течение нескольких часов, но не могу взломать его. Пожалуйста помоги.
<!DOCTYPE html>
<html>
<head>
<title>Flesh and Bone</title>
</head>
<body>
<h1>Flesh and Bone</h1>
<button id="fade">Fade</button>
<button id="show">Bring Back</button>
<h2>The Killers</h2>
<script>
var el = document.querySelector("h1");
var fade = document.getElementById("fade");
var show = document.getElementById("show");
var fader = function() {
el.style.opacity = 1;
var timer = setInterval(function(){
el.style.opacity -= 0.1;
if (el.style.opacity == 0) {
clearInterval(timer);
}
}, 40);
}
var shower = function() {
el.style.opacity = 0;
var timer = setInterval(function(){
el.style.opacity += 0.1;
if (el.style.opacity == 1) {
clearInterval(timer);
}
}, 40);
}
fade.onclick = fader;
show.onclick = shower;
</script>
</body>
</html>
Почему бы просто не использовать '.animate' или 'fadeTo'? –
@BradChristie В этом вопросе нет jQuery. – Jivings
@ Jivings: Я знаю, просто немного смешно со всеми вопросами jQuery на досках. Наверное, трудно измерить границы. –