Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.76/34: Рейтинг темы: голосов - 34, средняя оценка - 4.76
0 / 0 / 0
Регистрация: 24.10.2015
Сообщений: 2
1

Замена display:none; на display:block; при нажатии

24.10.2015, 14:59. Показов 6612. Ответов 3
Метки нет (Все метки)

Приветствую всех!
Мои познания в JavaScript очень слабы, поэтому буду благодарен за любую помощь.
Собственно есть некий html список, в котором лишние <li>...</li> скрываются свойством display:none; с помощью PHP.
Нужно чтобы при нажатии по ссыле display:none; менялось на display:block; и скрытые <li>..</li> появлялись.
Ниже код:
Java
1
2
3
4
5
6
7
8
9
10
11
<script type="text/javascript">
function down()
{
var a = document.getElementById('aaa');
if ( a.style.display == 'none' )
a.style.display = 'block'
else
if ( a.style.display == 'block' )
a.style.display = 'none';
};
</script>
HTML5
1
2
3
4
5
6
<ul class="menu">
    <?php if (!empty($output['show_goods_class']) && is_array($output['show_goods_class'])) { $i = 0; ?>
    <?php foreach ($output['show_goods_class'] as $key => $val) { $i++; ?>
    <li cat_id="<?php echo $val['gc_id'];?>" class="<?php echo $i%2==1 ? 'odd':'even';?>" <?php if($i>7){?>style="display:none;" id="aaa"<?php }?>> ... </li>
</ul>
<a id="more_cat" class="close" onclick="down()">показать все</a>
В этом коде display:none; меняется только у первого <li>..</li> , а все остальные остаются скрыты.
Так же пробовал через document.getElementsByClassName() , но ничего не вышло.
Люди подскажите что не так?
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.10.2015, 14:59
Ответы с готовыми решениями:

Display: block при нажатии на ссылку
Добрый вечер, подскажите пожалуйста, есть скрипт который показывает блок при нажатии на ссылку var...

Как отобразить скрытые элементы HTML(css-display:none;) используя JS!(display:block;)
&lt;!DOCTYPE html&gt; &lt;html lang=&quot;en&quot;&gt; &lt;head&gt; &lt;meta charset=&quot;UTF-8&quot;&gt; ...

display block display none onclick
когда я нажимаю на слово hello, с низу появляются новые слова. Я хочу, чтоб когда нажимать на слове...

Реализация el.style.display='block'; el.style.display='none';
Как реализовать следующие процедуры в указанных браузерах? el.style.display='block';...

3
Эксперт HTML/CSS
652 / 555 / 322
Регистрация: 27.01.2015
Сообщений: 1,374
24.10.2015, 15:11 2
Цитата Сообщение от vanya Посмотреть сообщение
id="aaa"
id - уникальный идентификатор, он может быть только 1 на странице.
меняем id="aaa" на class="aaa";
Javascript
1
2
3
4
5
6
7
8
9
10
function down()
{
var a = document.querySelectorAll('.aaa');
for(var i = 0, l = a.length; i < l; i++){
if ( a[i].style.display == 'none' )
a[i].style.display = 'block'
else
a[i].style.display = 'none';
}
}
1
супермизантроп
Эксперт JS
3866 / 2940 / 685
Регистрация: 18.04.2012
Сообщений: 8,556
24.10.2015, 15:17 3
vanya, дополню коллегу Shakalaka

как им и сказано, значение id должно быть уникальным на странице, но если вдруг ошибочно вы прописали два-три (и более) одинаковых идентификатора, то до второго-третьего... тега с этим id вам будет "не достучаться" -- метод getElementById ('myID') всегда возвращает только первый найденный в коде тег с id="myID"
1
0 / 0 / 0
Регистрация: 24.10.2015
Сообщений: 2
24.10.2015, 15:31  [ТС] 4
Всё заработало
Спасибо большое за оперативный ответ и подробное объяснение.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.10.2015, 15:31

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Не работает display: block;
Возникла проблема, хочу сделать на странице выбор базы данных (объект селект в диве) кнопками (две...

Не работает display: block под IE
Собственно вот код: &lt;style&gt; .sdan{ display:none; } &lt;/style&gt; &lt;form action=&quot;index.php&quot;...

display block для определенных id
Есть форма с селектом. В нем выводятся option в таком виде: &lt;option id=&quot;sec_4_cat_10&quot;...

Display: block; по клику на другом div
Первый опыт js, пока очень плохо разбираюсь. Не могу понять в чём допустил ошибку. Попробовал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.