Определить координаты элементов по классам
Задачка: на странице есть <div id="someid">, в нем несколько элементов с одинаковым class="someclass". Вопрос: определите координаты каждого элемента class="someclass" внутри <div id="someid">...
Вот пример решения, запускается так: <body onload="getCoord()">, но почему-то не работает
<script type="text/javascript">
function getCoord()
{
var q = document.getElementById(someid).getElementsByClassName(someclass);
for (var i=0; i<q.length; i++)
var rect[i] = q[i].getBoundingClientRect();
document.writeln('#'+i+'</br>')
document.writeln(rect[i].top+'</br>')
document.writeln(rect[i].bottom+'</br>')
document.writeln(rect[i].left+'</br>')
document.writeln(rect[i].right+'</br>')
}
</script>
|
1)
var rect[i] нельзя объявить элемент массива, не объявив сам массив. 2) Код надо заключать в блок {...} если у нас несколько действий.
var rect = [];
for (..)
{
rect[i] = ...
...
}
Чтобы впредь не гадать, почему не работает код, открываем консоль браузера и смотрим ошибки(F12 либо Ctrl+Shift+K либо Ctrl+Shift+O) Вместо document.writeln можно писать console.log(...) и тогда значение переменной будет выведено в консоль. |
Спасибо, уже заработало :) так и сделал
|
| Часовой пояс GMT +3, время: 17:33. |