如何使用 JavaScript 根據滑鼠位置更改背景顏色?
JavaScript 是一種著名的程式語言,是全球資訊網 (WWW) 的核心語言之一,與 HTML 和 CSS 並列。它允許程式設計師捕獲事件並修改文件物件模型 (DOM)。在本文中,我們將瞭解如何利用 JavaScript 根據滑鼠游標的位置更改背景顏色。
滑鼠移動事件
mousemove 是一個事件,當滑鼠游標移動且仍在相關元素內時,會在該元素上觸發。它提供有關游標點的偏移 x 和 y 座標的資訊。
語法
addEventListener(‘mousemove’, (event)=>{});
返回值:一個 MouseEvent 物件
演算法
我們將利用 mousemove 事件獲取滑鼠指標的位置,然後使用此資訊操作背景顏色。為了說明起見,我將把元素的背景顏色設定為顏色 RGB(x, y, x+y),其中 x 和 y 是滑鼠指標的座標。
示例
讓我們透過一個例子來理解這一點。
步驟 1:首先,我們將定義 HTML 程式碼。
<!DOCTYPE html> <html> <head> <title>How to change background color according to mouse location using JavaScript?</title> </head> <body> <h4>How to change background color according to mouse location using JavaScript?</h4> <div id="main"></div> </body> </html>
步驟 2:現在,我們將藉助 CSS 為網頁提供一些樣式。
<style> #main { width: 100%; height: 200px; background-size: cover; background-color: yellow; } </style>
步驟 3:現在,我們將編寫使用 movemove 事件更改背景顏色的邏輯。
<script> let div = document.getElementById("main"); div.addEventListener("mousemove", function(event) { let x = event.offsetX; let y = event.offsetY; div.style.backgroundColor = `rgb(${x%255}, ${y%255}, ${(x + y)%255})`; }); </script>
這是完整的程式碼
<!DOCTYPE html> <html> <head> <title>How to change background color according to mouse location using JavaScript?</title> <style> #main { width: 100%; height: 200px; background-size: cover; background-color: yellow; } </style> </head> <body> <h4>How to change background color according to mouse location using JavaScript?</h4> <div id="main"></div> <script> let div = document.getElementById("main"); div.addEventListener("mousemove", function (event) { let x = event.offsetX; let y = event.offsetY; div.style.backgroundColor = `rgb(${x%255}, ${y%255}, ${(x + y)%255})`; }); </script> </body> </html>
結論
在本文中,藉助 JavaScript 滑鼠移動事件,我們能夠跟蹤滑鼠指標的移動。這使我們能夠透過每次觸發事件時更改 backgroundcolor 屬性來更改背景顏色。
廣告