我試圖通過特定的點擊功能更改欄的背景顏色。單擊的每個元素(下拉列表)都會更改同一個欄的顏色。但我不想要5個點擊功能,我正在嘗試其他方法,但直到現在,沒有任何工作。誰能告訴我我做錯了什麼?jQuery:如何使用相同的點擊功能觸發不同的操作(使用不同的元素)
有了這段代碼,控制檯說「目標[我]不是一個功能......」我知道這是一種基本的,但我搜索和搜索,似乎沒有什麼適合我。
var targets=['#first-img, #second-img, #third-img, #fourth-img, #fifth-img'];
for(var i=0; i<targets.length; i++){
targets[i].click(function(){
$('#middle-bar').css('color','green');
$('#middle-bar').css('color','black');
//and so on...
})
}
編輯
好,有了這個代碼,我沒有得到任何錯誤,但沒有任何反應,顏色不會改變
var targets=['#first-img', '#second-img', '#third-img', '#fourth-img', '#fifth-img'];
for(var i=0; i<targets.length; i++){
$(targets[i]).click(function(){
$('#middle-bar').css('color','green');
$('#middle-bar').css('color','black');
})
}
編輯:
這是HTML:
個 <div class="col-6 vertical-middle">
<div class="text-left">
<span class="font1 uppercase s22 white">Cook With</span>
</div>
</div>
<div class="col-6 vertical-middle">
<div class="text-right">
<div class="dropdown-images" id="drop-img">
<img src="http://via.placeholder.com/50x30" alt="Nestlé">
<div class="custom-drop-images">
<img id="first-img" src="http://via.placeholder.com/50x30" alt="">
<img id="second-img" src=" first-img http://via.placeholder.com/50x30" onClick="" alt="">
<img id="third-img" src="http://via.placeholder.com/50x30" alt="">
<img id="fourth-img" src="http://via.placeholder.com/50x30" alt="">
<img id="fifth-img" src="http://via.placeholder.com/50x30" alt="">
</div>
</div>
</div>
</div>
</div>
而且目前的JS:
var targets=['#first-img', '#second-img', '#third-img', '#fourth-img', '#fifth-img'];
for(var i=0; i<targets.length; i++){
$(targets[i]).click(function(){
$('#middle-bar').css('color','green');
$('#middle-bar').css('color','black');
$('#middle-bar').css('color','brown');
$('#middle-bar').css('color','blue');
$('#middle-bar').css('color','red');
})
}
輸出爲奇數,酒吧仍然不會改變,但我可以看到第二圖像背景變紅...
是'targets'動態填充還是硬編碼? – CumminUp07