Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.10.2012, 12:28
Новичок на форуме
Отправить личное сообщение для ivan2006bip Посмотреть профиль Найти все сообщения от ivan2006bip
 
Регистрация: 31.07.2012
Сообщений: 9

Обернуть элемент в тег
Здравствуйте!

Подскажите пожалуйста, есть меню,

<ul class="menu">
<li class="menu_li"><a href="#">Пункт меню</a></li>
<li class="menu_li"><a href="#">Пункт меню</a></li>
<li class="menu_li"><a href="#">Пункт меню</a></li>
</ul>

нужно обернуть каждое второе слово ссылки в тег <em>

чтобы в итоге получилось

<ul class="menu">
<li class="menu_li"><a href="#">Пункт <em>меню</em></a></li>
<li class="menu_li"><a href="#">Пункт <em>меню</em></a></li>
<li class="menu_li"><a href="#">Пункт <em>меню</em></a></li>
</ul>

как это сделать?
Ответить с цитированием
  #2 (permalink)  
Старый 25.10.2012, 13:11
Кандидат Javascript-наук
Отправить личное сообщение для Your Посмотреть профиль Найти все сообщения от Your
 
Регистрация: 03.10.2012
Сообщений: 147

<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>Example</title>
</head>
<body>
	<ul class="menu">
		<li class="menu_li">
			<a href="#">Пункт меню</a>
		</li>
		<li class="menu_li">
			<a href="#">Пункт меню</a>
		</li>
		<li class="menu_li">
			<a href="#">Пункт меню</a>
		</li>
	</ul>
	<script type="text/javascript">
		var ul=document.getElementsByClassName('menu')[0].getElementsByTagName('a'),
			ahtml='';
		for(var i in ul) {
			ahtml=ul[i].innerHTML.split(' ');
			if('undefined'!==typeof ahtml) {
				ul[i].innerHTML=ahtml[0]+' <em>'+ahtml[1]+'</em>';
			}
		}
	</script>
</body>
</html>



JQuery:
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>Example</title>
	<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
</head>
<body>
	<ul class="menu">
		<li class="menu_li">
			<a href="#">Пункт меню</a>
		</li>
		<li class="menu_li">
			<a href="#">Пункт меню</a>
		</li>
		<li class="menu_li">
			<a href="#">Пункт меню</a>
		</li>
	</ul>
	<script type="text/javascript">
		var ahtml='';
		$('.menu a').each(function() {
			ahtml=$(this).text().split(' ');
			$(this).html(ahtml[0]+' <em>'+ahtml[1]+'</em>');
		});
	</script>
</body>
</html>

Последний раз редактировалось Your, 25.10.2012 в 13:18.
Ответить с цитированием
  #3 (permalink)  
Старый 25.10.2012, 16:27
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

$('.menu a').wrapInner('<em></em>')
Ответить с цитированием
  #4 (permalink)  
Старый 26.10.2012, 07:17
Кандидат Javascript-наук
Отправить личное сообщение для Your Посмотреть профиль Найти все сообщения от Your
 
Регистрация: 03.10.2012
Сообщений: 147

bes, это весь текст ссылки обернется.
А надо только 2 слово.
Ответить с цитированием
  #5 (permalink)  
Старый 26.10.2012, 13:49
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Сообщение от Your
bes, это весь текст ссылки обернется.
А надо только 2 слово.
смотрел бегло, результат налицо
Ответить с цитированием
  #6 (permalink)  
Старый 26.10.2012, 14:09
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Your
if('undefined'!==typeof ahtml)
alert( typeof "".split(" ") );
Ответить с цитированием
  #7 (permalink)  
Старый 26.10.2012, 15:35
Аватар для saturn
Аспирант
Отправить личное сообщение для saturn Посмотреть профиль Найти все сообщения от saturn
 
Регистрация: 08.09.2011
Сообщений: 67

Вот на jQuery

$('ul.menu li a').each(function (){
                all_text = $(this).text();
                array_words = all_text.split(' ')
                for(word in array_words){
                    if(word % 2 != 0) {
                        alert("<em>" + array_words[word] + "</em>")
                    }
                }
    });
Ответить с цитированием
  #8 (permalink)  
Старый 27.10.2012, 00:57
Новичок на форуме
Отправить личное сообщение для ivan2006bip Посмотреть профиль Найти все сообщения от ivan2006bip
 
Регистрация: 31.07.2012
Сообщений: 9

всем спасибо! решено
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как обернуть элемент? helatmyelo jQuery 4 08.05.2012 19:56
Drag-n-Drop - перетянуть элемент Jugo ExtJS 1 10.08.2011 19:10
Определение номера тега. awas Internet Explorer 6 18.07.2011 17:54
Удалить тег без удаления содержимого DZHETIGAPA Элементы интерфейса 3 20.05.2011 09:18
Как добавить тег в каждый элемент списка? elias jQuery 4 15.08.2010 15:19