ArhStrAngeR, Нет, хочется самому сделать, если хотел бы заказать пошел бы на фрилансер какой нить, а тут надеюсь получить какие то советы или примеры как это можно реализовать.
- 03.11.2013 12:17
- Регистрация: 05.08.2013
- Сообщений: 12
- Репутация: 0
- 03.11.2013 17:44
- Регистрация: 25.10.2013
- Сообщений: 62
- Репутация: 11
PuPsAn, но это действительно JavaScript. В принципе можно и без классов, просто обработка событий onmouseover и onmouseout для каждого td - с динамическим изменением цвета .style.backgroundColor у соответствующих td в таблице.
- 03.11.2013 19:59
- 03.11.2013 23:48
- Регистрация: 25.10.2013
- Сообщений: 62
- Репутация: 11
PuPsAn,
например:
Код:Рекомендую рассматривать как наводку, а не как законченное решение. Лучше бы прочитать в интернете про использованные функции и решения. Понятно также, что прописывание цветов в виде констант в JavaScript коде не есть хорошо, по уму надо менять класс у td. Кроме того, гораздо правильнее было бы не прописывать обработчик у каждой ячейки, а пройтись в цикле по всем ячейкам таблицы (наподобие приведенных здесь циклов) и назначить каждому обработчик динамически, по событию window.onload. Впрочем, за один комментарий JavaScript-у не научишь.<html> <script> function over(e) { var row = 0; var col = 0; var table = e.parentNode.parentNode; var trs = table.childNodes; for (var i = 0; i < trs.length; i++) { if ((trs[i].tagName+"").toLowerCase()=='tr') { var tds = trs[i].childNodes; for (var j = 0; j < tds.length; j++) { if ((tds[j].tagName+"").toLowerCase()=='td') { if (e == tds[j]) { row = i; col = j; } } } } } for (var i = 0; i < trs.length; i++) { if ((trs[i].tagName+"").toLowerCase()=='tr') { var tds = trs[i].childNodes; for (var j = 0; j < tds.length; j++) { if ((tds[j].tagName+"").toLowerCase()=='td') { tds[j].style.backgroundColor = i==row || j==col ? "#FFFF00" : "#FFFFFF"; } } } } } function out(e) { var table = e.parentNode.parentNode; var trs = table.childNodes; for (var i = 0; i < trs.length; i++) { if ((trs[i].tagName+"").toLowerCase()=='tr') { var tds = trs[i].childNodes; for (var j = 0; j < tds.length; j++) { if ((tds[j].tagName+"").toLowerCase()=='td') { tds[j].style.backgroundColor = "#FFFFFF"; } } } } } </script> <body> <table border="1" cellpadding="20"> <tr> <td onmouseover="over(this)" onmouseout="out(this)">1A</td> <td onmouseover="over(this)" onmouseout="out(this)">1B</td> <td onmouseover="over(this)" onmouseout="out(this)">1C</td> </tr> <tr> <td onmouseover="over(this)" onmouseout="out(this)">2A</td> <td onmouseover="over(this)" onmouseout="out(this)">2B</td> <td onmouseover="over(this)" onmouseout="out(this)">2C</td> </tr> <tr> <td onmouseover="over(this)" onmouseout="out(this)">3A</td> <td onmouseover="over(this)" onmouseout="out(this)">3B</td> <td onmouseover="over(this)" onmouseout="out(this)">3C</td> </tr> </table> </html>
Последний раз редактировалось Даниэль Алиевский; 03.11.2013 в 23:59.
Спасибо сказали:
PuPsAn(04.11.2013), - 04.11.2013 15:23
- Регистрация: 05.08.2013
- Сообщений: 12
- Репутация: 0
Спасибо всем:) буду пробовать что получится :))
Похожие темы
Темы | Раздел | Ответов | Последний пост |
---|---|---|---|
Вопрос по h1-h6 и таблице стилей в wordpress | Вопросы от новичков | 6 | 27.10.2013 22:09 |
Помощь по таблице на HTML | Web программирование | 7 | 16.09.2013 14:29 |
Выделение [b][/b] как на Вебмастерс. | Web программирование | 10 | 19.08.2012 15:29 |
Выделение внешних ссылок с помощью php-функции | Дайджест блогосферы | 0 | 23.10.2010 17:12 |