每次我的php代码循环时,它都会为购物车项目创建一张新卡。我想从每个不同卡的列表中随机选择卡的背景颜色。
我添加了脚本以选择随机颜色,并且jquery选择了卡片,但它仅更改了循环的第一项,其余部分不受jquery的影响。
HTML + PHP:
<?php foreach($sArray as $sizeString){ ?>
div id="item_card" class = "cart_item_wrapper" >
<?php } ?>
脚本:
var colors = ['#ff0000', '#00ff00', '#0000ff'];
var random_color = colors[Math.floor(Math.random() * colors.length)];
$('#item_card').css('background-color', random_color);
因此,这仅影响第一张卡片,我希望从“颜色”变量中随机选择每张卡片的颜色。 谢谢。
答案 0 :(得分:0)
PHP:
div class="cart_item_wrapper item_card"
JS:
$('.item_card').css('background-color', random_color);
我知道,对吧?
答案 1 :(得分:0)
通过串联循环数组的随机数或索引,使item_card id唯一。然后,将该参数作为参数传递给脚本函数,并用于应用颜色。
例如:
<?php foreach($sArray as $index=> $sizeString){?>
<div id="item_card<?php echo $index?>" class = "cart_item_wrapper"></div>
<?php } ?>
然后
function pickColor(index) {
var colors = ['#ff0000', '#00ff00', '#0000ff'];
var random_color = colors[Math.floor(Math.random() * colors.length)];
$('#item_card' + index).css('background-color', random_color);
}