除了一个不同的颜色为每个导航项目,当他们是活跃的,我需要我的网站标题(徽标,背景色),每页/相册的另一个颜色。
当导航内的链接处于活动状态时,.k-nav-current将自动追加。
所以我试过这个:
if ($("#main li:nth-child(2)").hasClass('.k-nav-current')) {
$("#site-title").addClass("babycurrent");
} else {
};
.babycurrent{
background: rgb(35,235,0);
}或者我没有尝试#main li:nth-child(),而是尝试了:
#main a#unique_nav_itemid
a#unique_nav_itemid
但这些解决方案都不起作用。
发布于 2014-03-18 20:04:16
您可以使用一种方法来测试文档中的元素是否存在:
if($('.k-nav-current').length) {
$("#site-title").addClass("babycurrent");
}当然,如果长度是0,它就被认为是"falsey“。任何其他正数都是“真实的”。
但是,对于任何进一步的帮助,我们都需要看到实际的标记。
编辑:
对于当前的设置,您正在尝试使用#main li:nth-child(2)并检查其类。类实际上应用于锚。您需要使用#main li:nth-child(2) a
if ($("#main li:nth-child(2) a").hasClass('k-nav-current')) {
$("#site-title").addClass("babycurrent");
}不过,最好只使用这样的东西(考虑到ids是唯一的):
if ($("#baby").hasClass('k-nav-current')) {
$("#site-title").addClass("babycurrent");
}最后,如果您真的希望它是动态的,您可以这样做:
var current = $("a.k-nav-current")[0].id.replace('#','');
$("#site-title").addClass(current + "current");编辑:
$( document ).ready(function() {
if ($("#baby").hasClass('k-nav-current')) {
$("#site-title").addClass("babycurrent");
}
});
// or you can do this (commented out) /*
$( document ).ready(function() {
var current = $("a.k-nav-current")[0].id.replace('#','');
$("#site-title").addClass(current + "current");
});
*/https://stackoverflow.com/questions/22489644
复制相似问题