FireFenix
у меня всё немного подругому.
в общем если упростить то у меня на экране появляются х (100) квадратов. у каждого рандомный цвет и рандомная длинна (до 100), ну и положение.. всё на ООП. каждый квадрат эт объект... охото чтоюы квадраты не появлялись друг на друге. тоесть надо надо брать всю площадь будующего квадрата и смотреть нет ли там чего инородного.. сначало была матрица of boolean но она шибко всё грузила.... а щас хотелосьбы сделать так что после получением рандомных координат/размеров я в цикле быстро проверял эту область на цвет не равный какойнить пересенно backCol и тд.. видимо придётся про это забыть )
предположим каждый квадрат - элемент таблицы/див с id="quad_n" где n это его номер n = [1,100] (размер 10*10) с параметром "background:#цвет"
obj = getElementById('quad_' + n);
1) При наведении мышкой отлавливаем позицию window.event.clientY и window.event.clientX, получаем obj.offsetTop и obj.offsetLeft (если вложено - то прибавляем смещение вложений)
потом если курсор находится в области квадратика, то выдаём obj.style.background
2) Как вариант - навесить на каждый квадратик onClick и передавать имя элемента и потом выводить уже свойство через функу по имени объекта
типа :
Код:
<script>
function my_color(name)
{
var obj = document.getElementById(name);
alert(obj.style.color);
//также можно добавить ещё требухи
//или если нужен тока цвет.....
//можно вызывать как onClick="javasciprt:alert(this.style.background);"
}
</script>
<div id="quad_1" style="background:blue" onClick="javascript:my_color(this.id)">Я синий</div>
<div id="quad_2" style="background:red" onClick="javascript:my_color(this.id)">Я красный</div>
<div id="quad_3" style="background:green" onClick="javascript:my_color(this.id)">Я зелёный</div>
Естесно я показал не квадратики.... но главное смысл! =)
Последний раз редактировалось FireFenix; 10.09.2009 в 19:09..