Я работаю над навигацией сайта, который уже был создан кем-то другим. У них есть активный класс для ссылки, на которой находится страница, однако когда последний класс добавляется к ссылке активного класса, он будет отображать активную ссылку только в браузере. Я посмотрел исходный код в браузере и появился только один из двух классов. Последний элемент навигации - это единственный элемент, который имеет этот второй класс. Он работает неправильно, только когда страница находится в последнем пункте навигации.
Я предполагаю, что это, наверное, что-то простое, я пропускаю. Я ценю любую помощь в этом.
tl: dr - Я могу отображать только класс.last в последнем пункте навигации.
Прошу прощения, если CSS ужасен. Я этого не писал.
страница сайта: http://securitybank.designangler.com/insurance
CSS:
#navigation .MainNavigation{
position:relative;
padding:12px 0px;
margin:0px 0px 0px 8px; /* left margin Changed from 28px on 10-21-13 */
list-style:none;
}
#navigation .MainNavigation li{
display:inline;
padding:12px 0px 0px 0px;
margin:0px 0px 0px 0px;
text-align:center;
}
#navigation .MainNavigation li a{
font-size:13px;
color:#FFF;
text-decoration:none;
padding:12px 14px 12px 14px;
margin:0px 0px 0px 0px;
border-left:#648558 2px solid;
}
#navigation .MainNavigation li a.last{
border-right:#648558 2px solid;
}
#navigation .MainNavigation li a.active{
padding:12px 19px 12px 17px;
background: url(/_images/bkgd_Active.png) repeat;
}
#navigation .MainNavigation li a:hover{
background: url(../_images/bkgd_NavHover.png);
}
После короткого обсуждения был сделан вывод, что класс "активный" был установлен встроенным JavaScript и из-за ошибки, тот же скрипт удалял класс "последний" при загрузке страницы.
В частности, именно эта линия JS:
aObj[i].className='active';
Решение заключается в замене строки выше:
var saved = aObj[i]; saved.className = saved.className + " active";
Исправлено с помощью Как добавить класс к данному элементу?