javascript设置三色灯

王林
Freigeben: 2023-05-12 13:38:07
Original
498 人浏览过

JavaScript是一种广泛使用的编程语言,许多Web开发人员使用它来创建交互式动态网页。其中,JavaScript中的 DOM(Document Object Model)对象提供了一些有趣的方法和属性来操纵HTML元素。在本文中,我们将通过这种方法来创建一个有趣的三色灯,并学习如何使用JavaScript操纵HTML元素。

首先,我们需要在HTML中创建一个灯的容器,并在其中添加三个圆形元素,以表示红、黄和绿色灯。我们可以使用CSS样式来为这些元素设置宽度、高度和颜色。

Nach dem Login kopieren

在设置了初始的HTML和CSS之后,接下来我们将使用JavaScript代码来操纵这些灯。我们将创建一个名为“setLight”的函数,该函数将用于控制三个灯的状态。

首先,我们需要定义一个名为“cur”的变量,用于追踪当前灯的状态。我们将其设置为0,表示初始状态为红灯亮。

var cur = 0;    // 初始状态为0:红灯亮
Nach dem Login kopieren

接下来,我们将创建一个名为“setLight”的函数。该函数将根据变量“cur”的当前值来确定哪个灯应处于亮的状态,并将其余灯设置为暗的状态。我们使用classList属性来添加和删除灯圈上的“on”类来实现这个功能。

function setLight() {
    var redLight = document.querySelector('.red');
    var yellowLight = document.querySelector('.yellow');
    var greenLight = document.querySelector('.green');

    switch(cur) {
        case 0:
            redLight.classList.add('on');
            yellowLight.classList.remove('on');
            greenLight.classList.remove('on');
            break;
        case 1:
            redLight.classList.remove('on');
            yellowLight.classList.add('on');
            greenLight.classList.remove('on');
            break;
        case 2:
            redLight.classList.remove('on');
            yellowLight.classList.remove('on');
            greenLight.classList.add('on');
            break;
    }
}
Nach dem Login kopieren

接下来,我们将使用定时器来控制三个灯的状态更改。我们将灯的状态更改为每隔2秒钟一次。灯的状态更改是通过将变量“cur”的值递增1而实现的,并在cur的值达到3时重新设置为0。

setInterval(function() {
    cur++;

    if(cur >= 3) {
        cur = 0;
    }

    setLight();
}, 2000);
Nach dem Login kopieren

最后,在HTML中添加JavaScript代码,我们的三色灯就完成了。

Nach dem Login kopieren

如上所述,我们使用JavaScript的DOM对象方法和属性来操纵我们在HTML中定义的元素。我们创建了一个名为“setLight”的函数来控制三个灯的状态,然后使用定时器来周期性地调用该函数来更改三个灯的状态。最终,我们创建了一个非常有趣的三色灯,通过在HTML和JavaScript之间的交互,实现了动态变化的灯光效果。

以上是javascript设置三色灯的详细内容。更多信息请关注PHP中文网其他相关文章!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!