Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Присваивание стиля по содержимому (https://javascript.ru/forum/jquery/14261-prisvaivanie-stilya-po-soderzhimomu.html)

ilikali 08.01.2011 20:22

Присваивание стиля по содержимому
 
Здравствуйте. Помогите пожалуйста решить проблему. есть код
<div class="second_team">Test4</div>
нужно сделать так чтобы в зависимости от содержимого добавлялось значения id к div блоку.

Содержание дива будет меняться и для разного содержимого необходим свой айдишник.Заранее спасибо

Matre 08.01.2011 20:24

$('.second_team').each(function(){
switch (this.innerHTML) {
case 'text 1':
this.id='primer';
break;
case 'text 2':
this.id='primer 6';
break;
case 'text 5':
this.id='primer 14';
break;
}
});

Amphiluke 08.01.2011 20:31

:contains()
Либо вручную — при помощи регулярных выражений. Сомневаюсь, что реальное содержимое будет удобно проверять при помощи конструкции switch

ilikali 08.01.2011 20:36

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>

<style type="text/css">
   #bakili {font-size:36px;}
</style>

<script type="text/javascript">

$('.second_team').each(function(){
switch (this.innerHTML) {
case 'Text4':
this.id='bakili';
break;
}
});

</script>



</head>

<body>

<div class="second_team">Test4</div>

</body>
</html>



Вроде сделал как вы сказали но почему-то не работает?

ilikali 08.01.2011 20:39

В ручную не получиться.Это Джумла.Значение дива меняется в зависимости от поля которое заполняется в материале.

Amphiluke 08.01.2011 20:39

ilikali, jQuery не подключил.:D

Amphiluke 08.01.2011 20:41

Цитата:

Сообщение от ilikali (Сообщение 86908)
В ручную не получиться.Это Джумла.Значение дива меняется в зависимости от поля которое заполняется в материале.

Я имел в виду, вручную=стандартными методами Javascript+регулярками.

ilikali 08.01.2011 20:45

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>

<style type="text/css">
   #bakili {font-size:36px;}
</style>

<script>

$('.second_team').each(function(){
switch (this.innerHTML) {
case 'Text4':
this.id='bakili';
break;
}
});

</script>



</head>

<body>

<div class="second_team">Test4</div>

</body>
</html>


Второй раз чтото пытаюсь написать. Вот вроде подключил.Все равно не пашет? Было бы хорошо знать что такое "Javascript+регулярками".

Matre 08.01.2011 20:49

ilikali
скрипт в конец body ставте

Amphiluke 08.01.2011 20:53

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
	.newclass { color:red; }
</style>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
	$(document).ready(function() {
		$(".second_team:contains(dolor)").addClass("newclass");
	});
</script>
</head>

<body>
	<div class="second_team">Lorem ipsum</div>
	<div class="second_team">Lorem ipsum dolor sit amet</div>
	<div class="second_team">Lorem ipsum dolor sit amet, consectetur adipiscing elit.</div>
</body>
</html>


Часовой пояс GMT +3, время: 09:40.