|
|
|
| Пишу на PHP.
Есть такой код:
<script language='JavaScript'>
function show_hide_text(divObj) {
var div = divObj.parentNode.getElementsByTagName('div')[1];
if (div.style.display == 'none') {
div.style.display = 'block';
divObj.style.color = '#3418A3';
} else {
div.style.display = 'none';
divObj.style.color = '#141414';
}
}
</script>
//Далее цикл while
<div style='cursor: pointer;' onclick='show_hide_text(this)'><a>Показать</a></div>
<div style='display: none;'>
Text
</div>
|
Все работает, но нужно добавить "Показать все", т.е. на нажатие открывались все скрытые блоки.
Подскажите, что добавить или изменить. Знание javascript ниже плинтуса. | |
|
|
|
|
|
|
|
для: scorpius
(14.04.2009 в 15:07)
| | Если все скрытые блоки - это именно теги DIV, то тогда пробегаетесь циклом по всей коллекции document.getElementsByTagName ('DIV') и применяете к каждому элементу style.display = 'block'; | |
|
|
|
|
|
|
|
для: PAT
(14.04.2009 в 17:43)
| | Спасибо. Сделал так:
<script language=\"JavaScript\">
function show_hide_text(divObj) {
var div = divObj.parentNode.getElementsByTagName('div')[1];
if (div.style.display == 'none') {
div.style.display = 'block';
divObj.style.color = \"#3418A3\";
} else {
div.style.display = 'none';
divObj.style.color = \"#141414\";
}
}
function show_all()
{
divs=document.getElementsByTagName ('DIV');
for (i=2;i<divs.length;i=i+2)
{
divs[i].style.display='block';
}
}
</script>
<div style=\"cursor: pointer;\" onclick=\"show_all()\" align='right'><a>Отобразить все</a></div>
//цикл while
<div style=\"cursor: pointer;\" onclick=\"show_hide_text(this)\" align='right'><a>Комментарии</a></div>
<div style=\"display: none;\">
Text
</div>
//while заканчивается
|
Все работает. | |
|
|
|
|
|
|
|
для: scorpius
(14.04.2009 в 15:07)
| | Появился такой вопрос
эта style='cursor: pointer;' делает всю строку в виде курсора и при нажатии на пустое место скрипт срабатывает
как избавится от этого глюка? | |
|
|
|
|
|
|
|
для: scorpius
(16.04.2009 в 10:43)
| | Это не глюк. Вы обрабатываете стиль cursor и событие onClick в тэге div, так на что же оно еще должно срабатывать?
Ставьте всю эту шелуху для ссылки, а не для всего слоя целиком. | |
|
|
|