Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Количество элементов списка (https://javascript.ru/forum/dom-window/13004-kolichestvo-ehlementov-spiska.html)

vah-smile 12.11.2010 09:52

Количество элементов списка
 
Примустим имеем список:
<ul>
      <li onclick="slide_control('img_1.jpg');"><a href="#"><img src="./data/img/img_1.jpg" class="slide_img" /></a></li>
      <li onclick="slide_control('img_2.jpg');"><a href="#"><img src="./data/img/img_2.jpg" class="slide_img" /></a></li>
      <li onclick="slide_control('img_3.jpg');"><a href="#"><img src="./data/img/img_3.jpg" class="slide_img" /></a></li>
      <li onclick="slide_control('img_1.jpg');"><a href="#"><img src="./data/img/img_1.jpg" class="slide_img" /></a></li>
      <li onclick="slide_control('img_2.jpg');"><a href="#"><img src="./data/img/img_2.jpg" class="slide_img" /></a></li>
      <li onclick="slide_control('img_3.jpg');"><a href="#"><img src="./data/img/img_3.jpg" class="slide_img" /></a></li>
      <li onclick="slide_control('img_1.jpg');"><a href="#"><img src="./data/img/img_1.jpg" class="slide_img" /></a></li>
  </ul>


Можно ли как-то подсчитать количество элементов у списке и после обратится к одному из элементов списка (тоисть так, как через массив)?

monolithed 12.11.2010 10:01

На вскидку:

<ul>
  <li><a href="#">0</a></li>
  <li><a href="#">1</a></li>
  <li><a href="#">2</a></li>
  <li><a href="#">3</a></li>
</ul>

<script type="text/javascript">
window.onload = function(){
    var li = document.getElementsByTagName('li');
    for(i=0, j=li.length; i<j; i++){
        li[i].onclick = function(i){
            return function(){
                 alert(i);
            };
        }(i);   
    }
};
</script>

vah-smile 14.11.2010 02:38

Спасибо, monolithed!
А можно ли теперь обратится к определенному тегу <LI> по его номеру? Тоисть, при нажатии на тег <DIV> у нас бы выполнилось действие как будто мы щелкнули на определенный <LI>?
<DIV onClick="Что здесь написать,  чтобы имитировать челчок по одному из списков?">Выполнить список 2</DIV>

<ul>
    <li onclick="control (1);">Список 1</li>
    <li onclick="control (2);">Список 2</li>
    <li onclick="control (3);">Список 3</li>
</ul>

monolithed 14.11.2010 10:20

Цитата:

Сообщение от vah-smile
Что здесь написать, чтобы имитировать челчок по одному из списков?

Тут ничего писать не нужно, это архаизм времен динозавров.

<div>click</div>
<ul>
  <li>0</li>
  <li>1</li>
  <li>2</li>
</ul>

<script type="text/javascript">
window.onload = function(){
    document.getElementsByTagName('div')[0].onclick = function(){
        document.getElementsByTagName('li')[1].style.color = 'red';
    }
};
</script>


Часовой пояс GMT +3, время: 21:44.