Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.09.2013, 08:25
Аватар для darl
Аспирант
Отправить личное сообщение для darl Посмотреть профиль Найти все сообщения от darl
 
Регистрация: 13.09.2012
Сообщений: 38

Выделение колонки в таблице
Доброе время суток.
Не могу понять как лучше реализовать идею.
имеется таблица
<table id="table">
<tr><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
</table>

и CSS
#table tr:hover{
background:red;
}

Здесь у меня реализовано изменение цвета ряда у таблицы по наведению, здесь все обходится без JS.
Я хочу реализовать выделение еще столбца, здесь уже нужен JS,
Только не пойму как, можно конечно вешать на каждую ячейку class, но ИМХО это будет прожорливо, т.к. таблицы у меня будут большими.
Подскажите советом как будет эффективней
Ответить с цитированием
  #2 (permalink)  
Старый 19.09.2013, 08:51
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от darl
Я хочу реализовать выделение еще столбца, здесь уже нужен JS
Не факт!

<!DOCTYPE html>
<html>
<head>
<!--
<script src="http://code.jquery.com/jquery-latest.js"></script>
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
td {
	width: 20px;
	height: 20px;
}
td:first-child + td {
	background-color: red;
}
</style>
<script type="text/javascript">
</script>
</head>
<body>
<table id="table" border='1'>
	<tr><td></td><td></td><td></td></tr>
	<tr><td></td><td></td><td></td></tr>
	<tr><td></td><td></td><td></td></tr>
	<tr><td></td><td></td><td></td></tr>
</table>
</body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 19.09.2013, 08:59
Аспирант
Отправить личное сообщение для vashurin Посмотреть профиль Найти все сообщения от vashurin
 
Регистрация: 01.04.2008
Сообщений: 52

Сообщение от darl Посмотреть сообщение
Доброе время суток.
Не могу понять как лучше реализовать идею.
имеется таблица
<table id="table">
<tr><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
</table>

и CSS
#table tr:hover{
background:red;
}

Здесь у меня реализовано изменение цвета ряда у таблицы по наведению, здесь все обходится без JS.
Я хочу реализовать выделение еще столбца, здесь уже нужен JS,
Только не пойму как, можно конечно вешать на каждую ячейку class, но ИМХО это будет прожорливо, т.к. таблицы у меня будут большими.
Подскажите советом как будет эффективней
<style type="text/css">
.attention {background:#999}
</style>
<table id="table">
<tr><td>1</td><td>2</td><td>3</td></tr>
<tr><td>1</td><td>2</td><td>3</td></tr>
<tr><td>1</td><td>2</td><td>3</td></tr>
<tr><td>1</td><td>2</td><td>3</td></tr>
</table>
<script type="text/javascript">
var tr_list = document.getElementById('table').getElementsByTagName('tr');
for(var i=0; i<tr_list.length; i++){
tr_list[i].getElementsByTagName('td')[1].className='attention';
}
</script>
Ответить с цитированием
  #4 (permalink)  
Старый 19.09.2013, 09:02
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от vashurin
getElementsByTagName('tr')
getElementsByTagName('td')
Есть же коллекции rows() и cells()...
Ответить с цитированием
  #5 (permalink)  
Старый 19.09.2013, 09:05
Аспирант
Отправить личное сообщение для vashurin Посмотреть профиль Найти все сообщения от vashurin
 
Регистрация: 01.04.2008
Сообщений: 52

Сообщение от ksa Посмотреть сообщение
Есть же коллекции rows() и cells()...
Кстати, да! Но просто первое, что на ум пришло.
А в принципе, вы уже дали хороший совет насчет CSS селекторов .
Хотя, автору вопроса почему то нужен был JS.
Ответить с цитированием
  #6 (permalink)  
Старый 19.09.2013, 10:23
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

ksa,
vashurin,
не пойму где у вас :hover?
Ответить с цитированием
  #7 (permalink)  
Старый 19.09.2013, 12:04
Аватар для darl
Аспирант
Отправить личное сообщение для darl Посмотреть профиль Найти все сообщения от darl
 
Регистрация: 13.09.2012
Сообщений: 38

Ну да, я тоже не пойму, все примеры основаны на статическом окрашивании колонок, а пример с CSS коряво работает с колонками colspan
Ответить с цитированием
  #8 (permalink)  
Старый 19.09.2013, 12:16
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

darl,
пример для медитации Подсветка родительских ячеек таблицы
если поискать то ещё найдёте примеры на форуме
Ответить с цитированием
  #9 (permalink)  
Старый 19.09.2013, 13:12
Аспирант
Отправить личное сообщение для vashurin Посмотреть профиль Найти все сообщения от vashurin
 
Регистрация: 01.04.2008
Сообщений: 52

Сообщение от рони Посмотреть сообщение
ksa,
vashurin,
не пойму где у вас :hover?

Ну всегда для топикстартера нужно оставить интригу.
Что б автор сам понял, что на ячейки таблицы надо повесить слушатель события mouseover.
При совершении события проверить "порядковый номер" ячейки относительно всех ячеек родителя, т.е. "номер" TD относительно TR.
Во всей таблице, во всех строках, отметить ячейки с "порядковым номером" (последнее я и показал).
Ответить с цитированием
  #10 (permalink)  
Старый 19.09.2013, 14:54
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от рони
не пойму где у вас :hover?
Сообщение от vashurin
всегда для топикстартера нужно оставить интригу
Именно так.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выделение только одного <tr> в таблице vitek25 Элементы интерфейса 3 11.01.2013 11:09
Как сделать размер ячейки в таблице не больше определённого значения? javascript_pupil (X)HTML/CSS 16 18.02.2012 12:52
Выделение строки в таблице posta ExtJS 5 23.06.2011 12:31
Не совсем обычный фрейм и выезжающий текст при наводе на картинку. amaz245 Элементы интерфейса 35 25.12.2010 17:29
Выделение одиночных тэгов Pattern Events/DOM/Window 7 26.05.2009 23:29