HTML:
<div class="rating" id = "r1"></div>
<div class="rating" id = "r2"></div>
<div class="rating" id = "r3"></div>
<div class="rating" id = "r4"></div>
<div class="rating" id = "r5"></div>
Js(使用jquery 1.10.1):
<script type = "text/javascript">
$(document).ready(function(){
var rate = new Array();
rate[1] = "r1";
rate[2] = "r2";
rate[3] = "r3";
rate[4] = "r4";
rate[5] = "r5";
var r = <?php echo $rate;?>
for(var i=1; i<=r;i++){
var k = rate[i];
$('#'+k).css{('background-image': 'url(images/star_green.png)')};
}
});
</script>
基本上我想用这段代码做的是修改前x个div的背景(我的db中提供的数字)。我知道js变量r取正确的值...对于k变量是相同的......我认为唯一不起作用的是设置背景的部分。我使用直接值(没有+ k部分)对其进行测试,但两者都不起作用。 该页面位于root中,images文件夹位于其旁边。
有什么建议吗?
PS:Js脚本放在div之后的页面上。
答案 0 :(得分:1)
你错过了分号
var r = <?php echo $rate;?>
应该是
var r = <?php echo $rate;?>;
另外
$('#'+k).css{('background-image': 'url(images/star_green.png)')};
应该是
$('#'+k).css({'background-image': 'url(images/star_green.png)'});
答案 1 :(得分:0)
$(document).ready(function () {
var rate = new Array();
rate[1] = "r1";
rate[2] = "r2";
rate[3] = "r3";
rate[4] = "r4";
rate[5] = "r5";
var r = <? php echo $rate; ?> ;
for (var i = 1; i <= r; i++) {
var k = rate[i];
$('#' + k).css
({'background-image': 'url(images/star_green.png)'});
};
}
});
答案 2 :(得分:0)
请试一试。
$( '评分 ')的CSS(' 背景图像', 'URL(图像/ image.jpeg)');