Javascript 初學筆記33 利用DOM操作改變背景顏色(rgb)

光看標題應該會覺得這什麼奇怪的問題,光是教學網站就一堆關於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時,你傳入的東西本身就是個字串,所以這樣的問題就可以藉由單引號或雙引號來解決! 挺有趣的吧~!

廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s