光看標題應該會覺得這什麼奇怪的問題,光是教學網站就一堆關於background屬性的資訊,改個背景顏色有什麼困難的! 坦白說,一開始我也是這樣想的,但我發現如果打算利用DOM將背景顏色以
rgb(a,b,c)
的方法做修改你會發現個很有趣的問題-你直覺的想法是錯誤的QAQ,試想以下的程式碼
HTML
<div class="container"> <div class="item"> I'm a box </div> </div>
今天你打算用JS將其背景顏色設為rgb(255,255,0)
很直覺的作法就是
JS
const item = document.querySelector('.item') item.style.background = rgb(255,255,0)
你將發現這個做法一點效果都沒有,打開console看一下
Uncaught ReferenceError: rgb is not defined
其實仔細想想也是理所當然的,在js中本來就沒有rgb這樣的function,那應該如何處理?
我找了許多資源,後來發現最簡單的就是以下這個
item.style.background = "rgb(255 , 255 , 0)"
原因在於說原本在利用DOM修改元素style時,你傳入的東西本身就是個字串,所以這樣的問題就可以藉由單引號或雙引號來解決! 挺有趣的吧~!