我需要以下问题的帮助。我需要根据父类的类名将css属性(背景)更改为某些内容。这是我的代码。
HTML
<div id="types">
<ul>
<li class='car'><a href='#'>Car</a></li>
<li class='bus'><a href='#'>Bus</a></li>
</ul>
</div>
我需要更改background-image
代码的a
。如果我在li.car
,则背景为images/car.png
,如果在li.bus
,则为images/bus.png
。
我无法弄清问题在哪里。这就是我的开始,这是有效的。
$('#types ul li a').css('background', "url('./images/skills/cooking.png')
center center no-repeat");
但是当我将其更改为类似的东西时,它将无效:
$('#types ul li a').css('background',
"url('./images/skills/'+($(this).parent().attr('class'))+'.png')
center center no-repeat");
有什么问题?
答案 0 :(得分:1)
除非您专门调用它eval
或Function
构造函数,否则不会执行引号内的代码。尝试将它撞到引号之外,它应该可以工作。
$('#types ul li a').each(function() {
$(this).css('background', "url('./images/skills/" + ($(this).parent().attr('class')) + ".png') center center no-repeat");
});