Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.05.2017, 21:55
Новичок на форуме
Отправить личное сообщение для RunBust Посмотреть профиль Найти все сообщения от RunBust
 
Регистрация: 04.05.2017
Сообщений: 2

Обработка одинаковых классов
Вкратце: Есть 3 блока с одинаковыми классами, возможно ли получить координаты каждого блока отдельно?

Вот код:

<html>
 <head>

<meta charset="utf-8">
 </head>
 <body>

 <div class="block">БЛОК 1</div>
<br>
  <div class="block">БЛОК 2</div>
<br>
<br>
   <div class="block">БЛОК 3</div>
<br>
	  <script>

// получаем координату Y первого блока 

 var block = document.querySelector('.block');
 var br = block.getBoundingClientRect();
 alert(br.top + window.pageYOffset);


  </script>
 
 </body>
</html>
Ответить с цитированием
  #2 (permalink)  
Старый 04.05.2017, 21:59
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

RunBust,
что мешает циклом по блокам пройти?
Ответить с цитированием
  #3 (permalink)  
Старый 05.05.2017, 09:10
Новичок на форуме
Отправить личное сообщение для RunBust Посмотреть профиль Найти все сообщения от RunBust
 
Регистрация: 04.05.2017
Сообщений: 2

Как? Ведь метод "document.querySelector('.block')" всегда возвращает только первый блок.
Ответить с цитированием
  #4 (permalink)  
Старый 05.05.2017, 09:38
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

RunBust,
querySelectorAll
Ответить с цитированием
  #5 (permalink)  
Старый 05.05.2017, 09:50
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

RunBust,

#коллекции-не-массивы
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>

  <script>
window.addEventListener('DOMContentLoaded', function() {
[].forEach.call( document.querySelectorAll('.block'), function(block) {
 var br = block.getBoundingClientRect();
 alert(br.top + window.pageYOffset);

});
    });
  </script>
</head>

<body>
<div class="block">БЛОК 1</div>
<br>
  <div class="block">БЛОК 2</div>
<br>
<br>
   <div class="block">БЛОК 3</div>
<br>


</body>
</html>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменение стиля всех одинаковых классов при наведение(клике) dmitriy39reg jQuery 10 03.02.2015 14:27
Можно ли объединить несколько классов? zazula (X)HTML/CSS 3 14.12.2014 11:40
Эмулятор классов на JavaScript yriiarutiunian Ваши сайты и скрипты 4 24.10.2014 21:26
Обработка нажатия на элемент и его родитель klev2004 Общие вопросы Javascript 3 12.12.2012 20:07
Как получить css свойства одинаковых классов AnkaIiIn Общие вопросы Javascript 3 11.11.2012 21:08