我在functions.php文件中有一个类别颜色函数,我使用以下代码为每个li元素指定类别颜色:
$i = 0;
$color = get_term_meta( $menu_item->object_id, '_category_color', true );
$color = ( ! empty( $color ) ) ? "#{$color}" : '#fff';
$menu_list .= "\t\t\t\t\t". '<li id="'.$i .'"style="border-left:5px solid '.$color .';">
<a href="'. $url .'">'. $title .'</a></li>' ."\n";
$i++;
我正在尝试获取每个li的border-left-color并将它们指定为该div的背景但是在这个jquery代码中,$ i在1中停止。如何将其作为每个li的循环?
$(document).ready(function(){
$i = 0;
var $c=$('.side-category ul li#'+$i).css("border-left-color");
$('.side-category ul li#'+$i).css("background", $c);
$i++;
});
感谢您阅读!
答案 0 :(得分:3)
将document.ready中的代码替换为:
$('.side-category ul li').each(function(){
$(this).css("background", $(this).css("border-left-color"));
})
无需添加$i
,jQuery
具有each
功能,因此您可以直接使用该功能。
每个功能都将遍历li
.side-category ul