Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 02.07.2017, 15:14
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

<html>
<head>
	<title>Untitled</title>
	<meta charset="utf-8">
	<style type="text/css">
	</style>
	<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

</head>

<body>
	<ul>
		<li><a href="#" data-data="02.07.2017 12:38">- Lorem ipsum dolor sit amet.</a></li>
		<li><a href="#" data-data="01.07.2017 10:30">- Lorem ipsum dolor sit amet.</a></li>
		<li><a href="#" data-data="31.06.2017 11:32">- Lorem ipsum dolor sit amet.</a></li>
		<li><a href="#" data-data="07.07.2017 11:38">- Lorem ipsum dolor sit amet.</a></li>
		<li><a href="#" data-data="06.07.2017 10:41">- Lorem ipsum dolor sit amet.</a></li>
		<li><a href="#" data-data="05.06.2017 09:30">- Lorem ipsum dolor sit amet.</a></li>
	</ul>

	<ul>
		<li><a href="#" data-data="02.07.2017 11:38">- Lorem ipsum dolor sit amet.</a></li>
		<li><a href="#" data-data="01.07.2017 10:41">- Lorem ipsum dolor sit amet.</a></li>
		<li><a href="#" data-data="31.06.2017 09:30">- Lorem ipsum dolor sit amet.</a></li>
		<li><a href="#" data-data="09.07.2017 11:38">- Lorem ipsum dolor sit amet.</a></li>
		<li><a href="#" data-data="19.07.2017 10:41">- Lorem ipsum dolor sit amet.</a></li>
		<li><a href="#" data-data="22.06.2017 09:30">- Lorem ipsum dolor sit amet.</a></li>
	</ul>

	<script>
		arr=[];
		$("li a").each(function(indx, element){
			var s = /\D/
			var a = $(this).attr("data-data").split(' ').reverse().join(',').split(s).reverse().join('');
			arr.push(a);
			$(this).attr("data-color", a);
		});
		arr.sort((a, b)=> a - b);
		var i = arr.length;
		while (i--) $('[data-color = '+arr[i]+']').css('color','rgb('+(255-i*20)+','+i*20+',0');
	</script>

</body>
</html>


Цифра 20 это контрастность, если новостей много надо уменьшить
Ответить с цитированием
  #12 (permalink)  
Старый 02.07.2017, 15:33
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

Если даты не по порядку, то при помощи CSS не получится(?). Хотя если даты в каждом списке отсортированы, то можно обойтись стилями.
Код:
dd:nth-of-type(1) a { color: green }
dd:nth-of-type(2) a { color:red }
В противном случае потребуется функция, которая отсортирует элементы в списке и назначит им классы "свежести"

https://jsfiddle.net/5zp33oxa/
Ответить с цитированием
  #13 (permalink)  
Старый 02.07.2017, 15:57
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

<html>
<head>
	<title>Untitled</title>
	<meta charset="utf-8">
	<style type="text/css">
	</style>
	<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

</head>

<body>
<dl>
<dt data-data="Fri, 30 Jun 2017 12:17:17 +0000">30 июня, 12:17</dt>
<dd><a href="#">Lorem ipsum dolor sit amet, consectetur adipisicing.</a></dd>
<dt data-data="Fri, 30 Jun 2017 01:22:43 +0000">30 июня, 01:22</dt>
<dd><a href="#">Lorem ipsum dolor sit amet, consectetur adipisicing.</a></dd>
<dt data-data="Fri, 30 Jun 2017 11:15:30 +0000">30 июня, 11:15</dt>
<dd><a href="#">Lorem ipsum dolor sit amet, consectetur adipisicing.</a></dd>
</dl>
<dl>
<dt data-data="Fri, 30 Jun 2017 02:17:17 +0000">30 июня, 02:17</dt>
<dd><a href="#">Lorem ipsum dolor sit amet, consectetur adipisicing.</a></dd>
<dt data-data="Fri, 30 Jun 2017 03:22:43 +0000">30 июня, 03:22</dt>
<dd><a href="#">Lorem ipsum dolor sit amet, consectetur adipisicing.</a></dd>
<dt data-data="Fri, 30 Jun 2017 04:15:30 +0000">30 июня, 04:15</dt>
<dd><a href="#">Lorem ipsum dolor sit amet, consectetur adipisicing.</a></dd>
</dl>

	<script>
		arr=[];
		$("dl dt").each(function(indx, element){
			var s = /\D/
			var a = new Date($(this).attr("data-data")).valueOf();
			arr.push(a);
			$(this).attr("data-color", a);
		});
		arr.sort((a, b)=> a - b);
		for (var i = 0 ; i < arr.length; i++) $('[data-color = '+arr[i]+']').next('dd').children('a').css('color','rgb('+(255-i*30)+','+i*30+',0');
	</script>

</body>
</html>

Переделал под DD-шки если понадобится

Последний раз редактировалось j0hnik, 02.07.2017 в 16:03.
Ответить с цитированием
  #14 (permalink)  
Старый 04.07.2017, 12:32
Аспирант
Отправить личное сообщение для malsyst Посмотреть профиль Найти все сообщения от malsyst
 
Регистрация: 20.07.2012
Сообщений: 80

laimas,
Благодарю! Это то, что нужно.

Последний раз редактировалось malsyst, 04.07.2017 в 12:37.
Ответить с цитированием
  #15 (permalink)  
Старый 04.07.2017, 13:00
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от malsyst
Благодарю!
За что?

Сообщение от malsyst
Это то, что нужно.
Что именно? Лично я не понимаю, почему у вас в списке две записи с одной датой, но с разным цветом.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменение цвета ссылки в зависимости от ее адреса theVid jQuery 1 06.10.2012 19:56
Изменением цвета рядка таблицы по onMouseOver - проблема Flashbacks Элементы интерфейса 2 08.04.2012 14:52
Смена фона и цвета ссылки, если посетитель находиться на ней Gawk Общие вопросы Javascript 4 19.02.2012 15:27
Изменение цвета ссылки с помощью js Alex Pacifik Элементы интерфейса 3 31.01.2012 15:08
Изменение цвета ссылки. bpystep Общие вопросы Javascript 17 18.11.2011 18:41