Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Выезжающее меню
 
 автор: new_user   (03.12.2008 в 13:49)   письмо автору
 
 

Здравствуйте форумчане.

Вот собственно код страницы с этим самым меню. Всё работает, но таких меню нужно несколько... Как передать параметр функциям show_in() и close_in(), точнее как передать параметр при их рекурсивном вызове функцией setTimeout? Параметром должен являться id скрываемого/раскрываемого элемента.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>

<script type="text/javascript">
var pos  = 10;  
function menu_in () {
var he = document.getElementById('menus').style.height;
    if (he < "300px") {
         show_in();
    }
    else {
         close_in();
    }
}
function show_in()  {
    he = document.getElementById('menus').style.height = pos+'px';
    pos += 5;
    if (pos < 305) {setTimeout("show_in()", 15);}
}
function close_in()  {
    he = document.getElementById('menus').style.height = pos+'px';
    pos -= 5;
    if (pos > 10) {setTimeout("close_in()", 15);}
}
</script>

</head>

<body>
<a href="#" onclick="menu_in();">Open</a>
<br />

<div id="menus" style="width:170px; height:10px; background-color:#FFFFFF; overflow:hidden;">
<br /><br />
CPU и платформа<br />
Видеокарты<br />
HDD и накопители<br />
Комплектующие<br />
Мониторы<br />
Звук и видео на ПК<br />
Ноутбуки<br />
Компьютеры, серверы<br />
Принтеры и МФУ<br />
Периферия<br />
Фото и видео<br />
Бизнес
</div>

</body>
</html>

  Ответить  
 
 автор: mikha   (03.12.2008 в 15:13)   письмо автору
 
   для: new_user   (03.12.2008 в 13:49)
 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
<script type="text/javascript">
function menu_in(id, height){
    id_ = id;
    height_ = height;
    he = parseInt(document.getElementById(id_).style.height);
    if(he < height){
        show_in();
    }else{
        close_in();
    }
}
function show_in(){
    he += 5;
    document.getElementById(id_).style.height = he + 'px';
    if(he < height_ + 5){
        setTimeout('show_in()', 15);
    }
}
function close_in(){
    he -= 5;
    document.getElementById(id_).style.height = he + 'px';
    if (he > 0){
        setTimeout('close_in()', 15);
    }
}
</script>
</head>
<body>
<a href="#" onclick="menu_in('menus1', 120);">menus1</a> <br />
<div id="menus1" style="width:170px; height:0px; background-color: #99CCFF; overflow:hidden;"> CPU и платформа<br />
  Видеокарты<br />
  HDD и накопители<br />
  Комплектующие<br />
  Мониторы<br />
  Звук и видео на ПК</div>
<a href="#" onclick="menu_in('menus2', 80);">menus2</a> <br />
<div id="menus2" style="width:170px; height:0px; background-color:#00FF99; overflow:hidden;"> CPU и платформа<br />
  Видеокарты<br />
  HDD и накопители<br />
  Комплектующие</div>
</body>
</html>

  Ответить  
 
 автор: new_user   (03.12.2008 в 15:30)   письмо автору
 
   для: mikha   (03.12.2008 в 15:13)
 

Огромное спасибо!!!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования