Как установить setTimeout в JavaScript
//Функция вводит временную задержку действия предыдущей ф-ции - и не пашет!
function passTime(id) {
setTimeout("hideLayer('"+id+"')", 2000);
}
лажа с кавычками. "
Оставить комментарий
BULKA8
Не могу установить setTimeout для сокрытия слоя при нажатии ссылки.Написал вот такой код, но он работает только в части.
Функция делающая слой видимым при нажатии ссылки работает, а фцекция, скрывающая его с временной залежкой при двойном щелчке - нет. Хотя без setTimeout все работает.
<html><head><title>My Page</title>
<script>
//Функция устанавливает, что слой видимый
function showLayer(layerid) {
var layer = document.getElementById(layerid);
layer.style.visibility = "visible";
}
//Функция устанавливает, что слой невидимый
function hideLayer(layerid) {
var layer = document.getElementById(layerid);
layer.style.visibility = "hidden";
}
//Функция вводит временную задержку действия предыдущей ф-ции - и не пашет!
function passTime {
setTimeout("hideLayer", 2000);
}
// Функция взята для пробы, работает
function timer {
setTimeout('alert("Hi there")', 2000);
}
</script>
</head><body>
<>
<a href="#" onClick = "showLayer('myLayer')"; ondblClick = "passTime('myLayer')">
MyLink1</a>
<>
<a href="#" onClick = timer>MyLink2</a>
<>
<div id="myLayer"
style= "position: absolute;
width: 100px;
height: 85px;
z-index: 2;
left: 211px;
top: 23px;
background-color:#FFECEC;
visibility:hidden">
</div>
</body></html>