выиграть соус! только что добавил еще одно правило css ul> li: empty {display: none;}
ю, что этот вопрос должен быть простым для гуру jQuery, но я, честно говоря, понятия не имею, как этого добиться.
У меня есть следующий HTML:
<div class="panel_contents">
<ul>
<li><a href="#">A</a></li>
<li><a href="#">B</a></li>
<li></li>
<li></li>
</ul>
</div>
Мне нужно нацелиться на пустое<li>
и прикрепить к ним класс, напримеркласс = «пустой», Я не хочу изменять HTML-код, чтобы вручную добавлять классы для презентационных целей, если мне это не нужно.
Я началJSFIDDLE здесь для демонстрационных целей.
Спасибо миллион за любую помощь с этим.
-
РЕДАКТИРОВАТЬ 3 [16.09.14]
Сегодня я признаю, что, возможно, использование jQuery может и не понадобиться, поскольку пустые элементы могут быть нацелены на CSS с помощью:empty
псевдо-селектор, который на самом деле довольно хорошо поддерживается во всех браузерах вплоть до IE8 (хотя и частичная поддержка) -http://caniuse.com/#search=empty
РЕДАКТИРОВАТЬ 2
ВотДругое решение.
Это решение ищет<a href>s
внутри<li>
, если он есть, он НЕ будет добавлять класс, если нет<a href>s
тогда класспустой добавлен.
РЕДАКТИРОВАТЬ 1
Спасибо Дэниелу за решение. ВотРАБОЧАЯ ДЕМО