Показать сообщение отдельно
  #6 (permalink)  
Старый 01.02.2009, 01:28
...
Отправить личное сообщение для Zibba Посмотреть профиль Найти все сообщения от Zibba
 
Регистрация: 13.10.2008
Сообщений: 225

Используя Ваши наработки сделал следующее:

window.onload = function(){

	function LightRow(el, cur, len, speed, color){
		this.el = el; // массив строк таблицы
		this.cur = cur; // текущая строка
		this.len = len; // кол-во строк в таблице
		this.speed = speed; // скорость анимации
		this.color = color; // цвет подсвечивания строки
	}
			
	LightRow.prototype = {
		animate: function(){
			var _this = this;
			setInterval(function(){
				if(_this.cur >= 0) _this.el[_this.cur].style.background = '#ffffff';
				_this.cur++;
				if(_this.cur >= _this.len) _this.cur = 0;
				if(_this.cur >= 0) _this.el[_this.cur].style.background = _this.color;
			}, this.speed);
		}				
	}

	var tr = document.getElementById('mytable').getElementsByTagName('tr');
	var lenght = tr.length;

	if(lenght > 1){
		var green = new LightRow(tr, -1, lenght, 1000, '#99cc33').animate();
		var yellow = new LightRow(tr, 2, lenght, 500, '#ffff00').animate();
		var red = new LightRow(tr, -1, lenght, 3600, '#ff0000').animate();
	}
}


Используя объект LightRow и его метод animate, Вы теперь сможете, создать сколь угодно таких движущихся строк в таблице.

На счет перекрытия строк даже и не знаю, тут уже дело того совпадет ли по времени подсветка строки или нет.

P.S. С таблицами в которых большое кол-во строк, смотрится даже забавно
Ответить с цитированием