JavaScript 如何在鼠标移动时改变Div的背景颜色

JavaScript 如何在鼠标移动时改变Div的背景颜色

在JavaScript代码中,鼠标移动事件被用来改变HTML元素的背景颜色。我们还想在把鼠标从元素上移开后把颜色恢复为蓝色。因此,我们也使用了mouseout事件。这将在我们把鼠标指针从元素上移开时发生。

getElementById()产生一个element对象,代表id属性与提供的字符串相匹配的元素。因为如果提供的元素ID必须是唯一的,它们是快速检索单个元素的方便方法。

addEventListener()函数被用来将事件处理程序与一个特定的元素联系起来。它对当前的事件处理程序没有影响。事件被认为是JavaScript的一个必要组成部分。一个网页对已经发生的事件作出回应。事件可以由用户或通过API产生。一个事件监听器是一个等待事件发生的JavaScript进程。addEventListener()方法是一个JavaScript构造函数。我们可以在一个元素上添加许多事件处理程序,而不会覆盖当前的事件处理程序。

使用style.backgroundColor属性

style.backgroundColor属性用于改变元素的颜色,它返回代表背景颜色的字符串值。这些背景属性的默认值是透明的。

Document.querySelectorAll()、getElementById()和Document.querySelector()只能在全局文档对象中访问。为了给网页添加功能,我们使用了JavaScript代码。在这个案例中,我们利用了带有 “id “参数的箭头函数。我们还可以使用CSS代码来修改背景颜色。这些方法都很容易使用,我们用一个样式的例子来展示所有的代码。

语法

The following is the syntax for the background color property −

document.getElementById('id').style.backgroundColor = 'color';

参数

  • backgroundColor – 改变背景的颜色。

  • getElementById – 用于读取和编辑特定的HTML元素。

  • color – 用于定义显示的颜色。

例子

在这些例子中,我们将看到如何使用JavaScript来改变一个Div的背景颜色。

<html>
   <head>
      <style>
         #sampleid {
           background-color: blue;
            width: 650px;
            height: 300px;
         }
      </style>
   </head>
   <body>
      <h2>Changing the Background color of a Div on Mouse Move Over</h2>
      <p> Move the mouse over the below DIV to change the background color</p>
      <div id="sampleid"></div>
      <script>
         document.getElementById("sampleid").addEventListener("mouseover", function() {
            document.getElementById("sampleid").style.backgroundColor = "pink";
         });
         document.getElementById("sampleid").addEventListener("mouseout", function() {
            document.getElementById("sampleid").style.backgroundColor = "violet";
         });
      </script>
   </body>
</html>

正如我们在例子中看到的,这里我们使用了addEventListener()、mouseover和mouseout事件。如果你在浏览器中执行整个代码,你会看到蓝色的方块。然而,如果你把鼠标指针放在该元素上,颜色会变成粉红色。当你把鼠标指针从该元素上移开时,背景颜色就会恢复为紫色。

例子

让我们看看另一个例子,通过使用querySelector()、addEventListener()和JavaScript的style.background属性,在鼠标移过时改变Div的背景颜色。

<html>
   <head>
      <style>
         .classfirst {
            width: 600px;
            background: green;
            height: 450px;
            position: absolute;
         }
      </style>
   </head>
   <body>
      <h2>Changing the background color of a Div on Mouse Move Over</h2>
      <p> Move the mouse over the below DIV to change the background color</p>
      <div class="classfirst"></div>
      <script>
         var color = ["blue", "purple","orange", "black", "white"];
         document.querySelector("div").addEventListener("mouseover", function () {
            document.querySelector("div").style.background = color[Math.floor(Math.random() * color.length)];
         })
      </script>
   </body>
</html>

div框的背景颜色可以随时用HTML、CSS和JavaScript来修改。为了挑选元素,我们将使用querySelector()和addEventListener()方法。

document.querySelector()返回文档中与提供的选择器或一组选择器相匹配的第一个元素。当JavaScript在文档中匹配一个给定的元素时,它会在HTML元素中找到其应用。如果没有发现匹配,则默认返回null。

第1步中,我们将为一个数组构造不同的颜色。

第2步是使用querySelector()函数挑选div元素,然后用addEvenListener()方法给它添加一个事件处理程序(鼠标移动)。

总结

在这篇文章中,我们已经成功地解释了如何使用JavaScript在鼠标移过时改变Div的背景颜色,并举了一些例子。我们使用了两个不同的例子,在第一个例子中,我们使用了addEventListener,mouseover和mouseout事件,以及style.backgroundColor属性。在第二个例子中,我们使用了addEventListener、querySelector和style.background属性来改变一个Div的背景颜色。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程