我正在尝试将body类(由Wordpress自动生成)与li类(也是自动生成的)进行匹配。如果匹配,那么我需要在li中添加一个新类。
E.g
如果body
为class="postid-621"
并且页面上的li
为class="postid-621"
,那么我需要在名为{{1}的li
中输入新类}}
请记住,id是自动生成的,所以我不能只是硬编码。
这甚至可能吗?
答案 0 :(得分:1)
你有一个严重的问题,在Wordpress中,身体通常有很多类,标准主题有类似的东西:
<body class="single single-post postid-621 single-format-standard masthead-fixed singular">
所以你必须实际获得postid
课程,并比较数字,因为这可能是你想要的。
$('#test').attr('class').split(/\s+/).filter(function(k) {
if ( $.trim(k).indexOf('postid') === 0 ) {
$('li.' + $.trim(k)).addClass('new_class_to_add');
}
});
获取class属性并比较它将在Wordpress中失败
答案 1 :(得分:0)
使用此
$(document).ready(function () {
if ($("body").attr("class") == $("#liId").attr("class")) {
$("#liId").addClass("newclass");
}
});
修改强>
if( $("li").hasClass($("body").attr("class")))
{
$("li").addClass("newclass");
}
答案 2 :(得分:0)
我假设您发布的类名只是一个示例,并且您希望将该类分配给与正文具有相同类别的任何li
jQuery(function($){
var clazz = $('body').attr('class');
if(clazz){
$('li.' + clazz).addClass('current-product')
}
})