Всем привет. Вообщем, возникла потребность немного поизвращаться над пользователем средствами JS. Т.к знаю я его не так хорошо, как хотелось бы - расписываю задачу. Нужно, что бы при нажатии на кнопку/ссылку/объект, сверху налагался маленьий слой с размером 200х200. А главное окно в это время становится неактивным. Внутри слоя должен быть таймер (N секунд, по истечению которых элемент исчезает, а главное окно становится активным) и кнопка "Закрыть", при нажатии, главное окно активируется, а этот элемент исчезает (сразу). Буду благодарен за код :roll: Спасибо.
[js]var content; function showall() { document.body.innerHTML = content } function hideall() { var div = document.createElement('div'); div.style.position = 'absolute'; div.style.left = '200px'; div.style.top = '200px'; div.style.width = '200px'; div.style.height = '200px'; div.style.left = '200px'; div.style.bgcolor = '#FF0000'; div.style.border = '1px solid #006600'; div.innerHTML = 'Текст слоя. <hr /><button onclick="showall()">Закрыть</button>'; content = document.body.innerHTML; document.body.innerHTML = ''; document.body.appendChild(div); setTimeout('showall()', 5000); }[/js] hideall() - скрывает содержимое страницы и показывает див 200Х200 на 5 секунд. showall() - восстанавливает контент страницы (вешается на кнопку "закрыть"). Или без DOM : [js] var content; function showall() { document.body.innerHTML = content } function hideall() { content = document.body.innerHTML; document.body.innerHTML = '<div style="position:absolute; left:200px; top:200px; width:200px; height:200px; z-index:1; border: 1px solid #006600;">Текст слоя. <hr /><button onclick="showall()">Закрыть</button></div>'; setTimeout('showall()', 5000); } [/js] Некрасиво только как-то
+Sten+ Спасибо, как раз то, что надо. Если не трудно - что бы таймер еще время показывал. Осталось еще N секунд до закрытия окна
Elkaz Ничего, кроме обыкновенного таймера (цикл с пятью интерациями с setTimeout(x, 1000) или просто setInterval(x, 1000) ) на ум не приходит.