Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.09.2010, 13:00
Интересующийся
Отправить личное сообщение для Kenshi25 Посмотреть профиль Найти все сообщения от Kenshi25
 
Регистрация: 23.09.2010
Сообщений: 15

Не работает селектор
Он должен во все четные элементы li, не находящиеся внутри ul класса disabled прописать какой-нибудь код.

$("#omg li:odd").not(parent("ul.disabled")).html("lalala");


Но увы, не работает(
Ответить с цитированием
  #2 (permalink)  
Старый 26.09.2010, 13:12
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

$(':not(ul.disabled) #omg li:odd').html( 'Бла бла бла' );
Ответить с цитированием
  #3 (permalink)  
Старый 26.09.2010, 13:20
Интересующийся
Отправить личное сообщение для Kenshi25 Посмотреть профиль Найти все сообщения от Kenshi25
 
Регистрация: 23.09.2010
Сообщений: 15

Есть проблема при таком способе, если внутри li есть еще ul, селектор игнорирует его содержимое, а должен также добавлять текст в li внутри этого ul

Последний раз редактировалось Kenshi25, 26.09.2010 в 13:31.
Ответить с цитированием
  #4 (permalink)  
Старый 26.09.2010, 13:30
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

$('#omg li:odd, ul', ':not(ul.disabled)').html( 'Бла бла бла' );
Ответить с цитированием
  #5 (permalink)  
Старый 26.09.2010, 15:51
Интересующийся
Отправить личное сообщение для Kenshi25 Посмотреть профиль Найти все сообщения от Kenshi25
 
Регистрация: 23.09.2010
Сообщений: 15

:not(ul.disabled) он теперь почему-то игнорирует, во все подрят текст вставляет(
Ответить с цитированием
  #6 (permalink)  
Старый 26.09.2010, 21:38
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

<head>
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
</head>
<body>

<script type="text/javascript">
$(function(){
	 $('div :not(.disabled:parent) li').html('text');

});
</script>
<div>
	<ul>
		<li></li>
		<li></li>
		<li>
			<ul>
			<li></li>
			<li></li>
			</ul>
		</li>
	</ul>
	<ul class="disabled">
		<li></li>
		<li></li>
	</ul>
</div>
</body>
Ответить с цитированием
  #7 (permalink)  
Старый 27.09.2010, 13:28
Интересующийся
Отправить личное сообщение для Kenshi25 Посмотреть профиль Найти все сообщения от Kenshi25
 
Регистрация: 23.09.2010
Сообщений: 15

В общем покажу на конкретном примере:
Нужно расскрасить списки разным текстом красным и синим, но происходит следующее:
1) Списки третьей степени вложенности расскрашиваются только синим
2) А списки внутри disabled глубже чем первой вложенности раскрашиваются как обычно, хотя не должны.

<head>
	<script src="http://code.jquery.com/jquery-latest.min.js"></script>
	</head>
	<body>
	 
	<script type="text/javascript">
	$(function(){
		$('div :not(.disabled:parent) li:even').css('color', 'red');
		$('div :not(.disabled:parent) li:odd').css('color', 'blue');
	});
	</script>
	<div>
	    <ul>
	        <li>red</li>
	        <li>blue</li>
	        <li>red
	            <ul>
	            <li>blue
	            	<ul>
	            	<li>red</li>
	            	<li>blue</li>
	            	<li>red</li>
	            	</ul>
		    </li>
	            <li>blue</li>
	            <li>red</li>
	            </ul>
	        </li>
	    </ul>
	    <ul class="disabled">
	        <li>black
		    <ul>
	            <li>black</li>
	            <li>black</li>
	            </ul>
		</li>
	        <li>black</li>
	    </ul>
	</div>
	</body>
Ответить с цитированием
  #8 (permalink)  
Старый 27.09.2010, 18:50
Интересующийся
Отправить личное сообщение для Kenshi25 Посмотреть профиль Найти все сообщения от Kenshi25
 
Регистрация: 23.09.2010
Сообщений: 15

Ну что никто помочь не сможет?))))
Ответить с цитированием
  #9 (permalink)  
Старый 27.09.2010, 20:19
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

$(function(){
	var $items = $("div > ul:not(.disabled) li");
	$items.filter(":odd").css("color", "#f00");
	$items.filter(":even").css("color", "#00f");
});

так?
Ответить с цитированием
  #10 (permalink)  
Старый 27.09.2010, 20:59
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

А если еще использовать метод .end, то можно и без кеширования обойтись.
Но вообще надо убивать за подобные задачи, для которых нужен такой "unobstructive"-javascript
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ajax запросы, работает на одних компах и не работает на других vtornik23 AJAX и COMET 2 22.03.2010 18:22
ява-скрипт выборочно работает-не работает zeta777 Internet Explorer 0 20.01.2010 11:41
Динамическая HTML форма (FireFox - работает, IE - не работает) dm1tr1y Общие вопросы Javascript 10 11.12.2009 15:59
Safari + ajax некорректно работает, а в других работает demi AJAX и COMET 35 15.07.2009 14:11
Скрипт меню-гармошки работает выборочно Extern Элементы интерфейса 2 23.02.2009 15:32