Я пытаюсь изменить CSS якоря, включенного в <li>
подменю. Вот HTML-код:
<ul id="nav">
<li class="subnav current"><a href="page1.html">Page1</a>
<ul>
<li><a href="page1.html#section1a">Page 1 Section A</a></li>
<li><a href="page1.html#section1b">Page 1 Section B</a></li>
<li><a href="page1.html#section1c">Page 1 Section C</a></li>
</ul>
</li>
<li class="subnav"><a href="page2.html">Page2</a>
<ul>
<li><a href="page2.html#section2a">Page 2 Section A</a></li>
<li><a href="page2.html#section2b">Page 2 Section B</a></li>
<li><a href="page2.html#section2c">Page 2 Section C</a></li>
</ul>
</li>
<ul>
Каждая секция имеет ширину 1060 пикселей, плавающий слева, и все секции включены в контейнер div, переполнение которого скрыто.
Вот скрипт, который я пробовал:
$(document).ready(function() {
var P=($(".section").position().left)*-1
var N=(P/1060)+1
$("#nav li.current ul li:first-child").find("a").css("color","#e53f33");
$("#nav li.current ul li:nth-child(N)").click(function(){
$(this).siblings().find("a").css("color","#777777");
$(this).find("a").css("color","#e53f33");
});
});
Этот скрипт отлично работает, когда я остаюсь на той же странице. Но, т. Е. Когда я нахожусь на странице 1 и щелкаю ссылку, расположенную на странице 2, CSS первого ребенка изменяется, даже если я нажал на другого ребенка. Где моя ошибка?
Вы можете увидеть, что здесь происходит http://www.theworkingowl.com.