Здравствуйте уважаемые форумчане. Подскажите пожалуйста, как в следующей функции запретить повторный её вызов при условии, что функция, к примеру, fadeIn уже сработала и у блока display: 'block'.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>My Web Page</title>
<style>
div.contentbox {
background: #1C9EFF;
width: 300px;
height: 100px;
padding: 12px;
}
</style>
</head>
<body>
<button onclick="fadeOut('div1')">Fade Out</button>
<button onclick="fadeIn('div1')">Fade In</button>
<div id="div1" class="contentbox"></div>
<p>Content that lives under my box</p>
<script src="js/main.js"></script>
</body>
</html>
var fade = {
fade_in_from: 0,
fade_out_from: 10
}
var fadeOut = function(element) {
var target = document.getElementById(element);
var newSetting = fade.fade_out_from / 10;
target.style.opacity = newSetting;
fade.fade_out_from--;
if (fade.fade_out_from == 0) {
target.style.opacity = 0;
target.style.display = "none";
clearTimeout(loopTimer);
fade.fade_out_from = 10;
return false;
}
var loopTimer = setTimeout('fadeOut(\''+element+'\')', 50);
}
var fadeIn = function(element) {
var target = document.getElementById(element);
target.style.display = "block";
var newSetting = fade.fade_in_from / 10;
target.style.opacity = newSetting;
fade.fade_in_from++;
if (fade.fade_in_from == 10) {
target.style.opacity = 1;
clearTimeout(loopTimer);
fade.fade_in_from = 0;
return false;
}
var loopTimer = setTimeout('fadeIn(\''+element+'\')', 50);
}