Замена одного скрытого див на другой.
Добрый день У меня такой вопрос. У меня есть горизонтально верхнее меню на странице. Хочу реализовать так чтобы при нажатие например первого меню на страницы появлялся скрытый див относящийся к этому меню. При нажатии на второй скрывался первый и появлялся див от второго меню. Ну вообщем чтобы при онклике на нужное меню все скрывалось и оставалось только одно.
Вот код:
<body>
<script type="text/javascript"> function displ(ddd) { if (document.getElementById(ddd).style.display == 'none') {document.getElementById(ddd).style.display = 'block'} else {document.getElementById(ddd).style.display = 'none'} } </script>
<a href="javascript: displ('1')">Описание</a> | <a href="javascript: displ('2')">Свойства</a> | <a href="javascript: displ('3')">Технические характеристики</a> | <a href="javascript: displ('4')">Использование</a>
<div id="1" style="display: none;">ТЕКСТ</div>
<div id="2" style="display: none;">ТЕКСТ2</div>
<div id="3" style="display: none;">ТЕКСТ3</div>
<div id="4" style="display: none;">ТЕКСТ4</div>
</body>
Вот сайт где этот пример: http://kexian.ru/?page_id=6:help: :help: |
Как вариант для размышления:
<script type="text/javascript">
window.onload = function(){
document.getElementsByTagName('a')[0].onclick = function(){
var dt = document.getElementsByTagName('dt'), i = dt.length;
while(i--){
return function(){
dt[i].style.display = (dt[i].style.display == '') ? 'block' : '';
};
}
}();
};
</script>
<style type="text/css">
dt {background: red; display: none; width: 100px; height: 50px;}
</style>
<dl>
<dd><a href="#">click</a></dd>
<dt></dt>
</dl>
|
ну здесь всеравно же нуужно два нажатия по меню чтобы оно или закрылось или открылось. Я не силен в джаве. Может есть какаято функция очищающая сценарий
|
Цитата:
Цитата:
Цитата:
|
сделай обработчик к онклик к каждому из меню скрывалось принудительно три остальных и открывался только тот что связанный. работа с свойством дисплау
http://yapro.ru/web-master/javascrip..._stranice.html или можеш сделать один див и менять в нём содержимое через innerHtml |
Djohan,
Алгоритм то простой всё скрыть и показать нужный... id лучше начинать с буквы и того:
<script type="text/javascript">
function displ(b) {
for (var a = 1; a < 5; a++) document.getElementById("d" + a).style.display = "none";
document.getElementById("d" + b).style.display = "block"
};
</script>
<a href="javascript: displ('1')">Описание</a> | <a href="javascript: displ('2')">Свойства</a> | <a href="javascript: displ('3')">Технические характеристики</a> | <a href="javascript: displ('4')">Использование</a>
<div id="d1" style="display: block;">ТЕКСТ1</div>
<div id="d2" style="display: none;">ТЕКСТ2</div>
<div id="d3" style="display: none;">ТЕКСТ3</div>
<div id="d4" style="display: none;">ТЕКСТ4</div>
|
Djohan какой же вы не самостоятельный:
<script type="text/javascript">
window.onload = function(){
var a = document.getElementsByTagName('a'), i = a.length;
while(i--){
a[i].onclick = function(i){
var dt = document.getElementsByTagName('dt');
return function(){
dt[i].style.display = (dt[i].style.display == '') ? 'block' : '';
};
}(i);
}
};
</script>
<style type="text/css">
dl, dt, dd {margin: 0px; padding: 0px;}
dl {border: 1px solid #DDD; float: left; margin-right: 10px; padding: 0px; width: 50px;}
dd, dt {text-align: center;}
dt {background: red; display: none; width: 50px; height: 50px;}
</style>
<dl>
<dd><a href="#">click</a></dd>
<dt>1</dt>
</dl>
<dl>
<dd><a href="#">click</a></dd>
<dt>2</dt>
</dl>
|
да я на учебу уезжал :) ВРемя думать не было. ВОт приехал а тут уже столько советов :) Спасибо большое :) Щас буду разбираться :)
ПЫС: А вообще у меня изучение джавы в планах. Сейчас пока не до этого :( |
Цитата:
|
| Часовой пояс GMT +3, время: 08:04. |