Можно ли с помощью jquery использовать селектор nth-child () для «a» или «a: hover», а не только для «li»? - PullRequest
0 голосов
/ 04 ноября 2010

Я создал панель навигации, где состояние наведения каждой ссылки имеет другой цвет, поэтому я пытаюсь выбрать состояния a: hover с помощью селектора jquerys nth-child (). я могу получить его, чтобы выбрать элемент li, но не a или a: hover. В настоящее время все зависания синие.

вот код jquery, который я пытаюсь использовать:

jQuery(document).ready(function() {        
jQuery('#leftbar li:nth-child(3)').css('border-bottom', '#000000 5px solid');
});

Привет, навигация генерируется с помощью php, вот она:

<ul id="leftbar">
<?php
$pagepath = "content/pages/";
$legalpath = "content/legals/";

$mainnavpath = "content/.system-use/navigation/";
$mainnavfile =  $mainnavpath."mainnav.inc";
if (file_exists($mainnavfile)) {
require $mainnavfile;


sort ($mainfiles);


for($i=0; $i<count($mainfiles); $i++)
{
if (!preg_match("/XX-/",$mainfiles[$i])) {
$displayname = preg_replace("/\.inc/i", "", $mainfiles[$i]);
$displayname = substr($displayname, 3);
echo "<li>";

echo "<a ";
if ($page==$displayname) {echo ' class="active"';} else {echo ' class="prinav"';}


echo "title='$displayname' href='";
if ($useredirect=="yes"){echo '/'.$displayname.'/';} else {echo  '/index.php?page='.$displayname;}
echo"' ";
echo "><span>$displayname</span></a></li>\n";

}}
}

else { echo "<strong>No Navigation - Please Login to your Admin System and set the Page Order</strong>"; }
?>

вот сайт, над которым я работаю: http://entourageuk.com/

Ура! Пол

1 Ответ

1 голос
/ 04 ноября 2010

Вы не можете выбрать, используя псевдоселектор CSS, например :hover, но да, вы можете выбрать элемент <a>.

Подходит ли :nth-child, зависит от вашей разметки.Я собираюсь предположить, что каждый <a> является потомком элементов <li>, которые вы выбираете.

Если это так, то вы просто добавили бы a к селектору.

jQuery('#leftbar li:nth-child(3) > a').css(...

Используется дочерний селектор > , и в основном говорится, что я хочу элемент (ы) <a>, который является прямым дочерним элементом элемента (ов) <li>), который является третьим дочерним элементом своего контейнера и является потомком leftbar.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...