用js控制電燈開關(guān)
利用js控制電燈開關(guān),供大家參考,具體內(nèi)容如下
題目:
通過js來控制電燈的開關(guān)
分析:
獲取電燈泡元素,給它綁定點(diǎn)擊事件,通過鼠標(biāo)點(diǎn)擊來實(shí)現(xiàn)電燈泡的開關(guān)
實(shí)現(xiàn)方法:
方法一:
獲取圖片元素,通過給按鈕綁定點(diǎn)擊事件來控制電燈開關(guān)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>電燈開關(guān)案例</title>
</head>
<body>
<img src="./img/關(guān).gif" alt="">
<button id="open">開燈</button>
<button id="close">關(guān)燈</button>
</body>
<script>
var open=document.getElementById("open");
var close=document.getElementById("close");
var img=document.getElementsByTagName("img")[0];
open.onclick=function(){
img.src="./img/開.gif"
}
close.onclick=function(){
img.src="./img/關(guān).gif"
}
</script>
</html>
總結(jié):這種方式比較簡(jiǎn)單,也不容易出錯(cuò),通過按鈕綁定,直接獲取對(duì)應(yīng)的電燈開關(guān)圖片
運(yùn)行結(jié)果:

相關(guān)方法:
- document.getElementById():通過id名獲取對(duì)應(yīng)的元素,
- document.getElementsByTagName():通過元素名獲取對(duì)應(yīng)的元素,獲取出來的是一個(gè)類數(shù)組對(duì)象
- onclick:?jiǎn)螕羰录ㄟ^鼠標(biāo)點(diǎn)擊觸發(fā)
方法二:
獲取圖片元素,直接給圖片綁定開關(guān)事件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>電燈開關(guān)案例</title>
</head>
<body>
<img src="./img/關(guān).gif" alt="">
</body>
<script>
var img=document.getElementsByTagName("img")[0];
var flag=false;
img.onclick=function(){
if(flag){
img.src="./img/關(guān).gif";
flag=false;
}else{
img.src="./img/開.gif";
flag=true;
}
}
</script>
</html>
注意:這種方法需要先做一個(gè)標(biāo)記(flag)來判斷電燈初始的狀態(tài),直接給圖片綁定點(diǎn)擊事件的時(shí)候,需要注意標(biāo)記(flag)的初始賦值為false。
運(yùn)行結(jié)果:點(diǎn)擊電燈泡時(shí),電燈明暗依次交替
相關(guān)圖片:


以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
window.location和document.location的區(qū)別分析
用戶不能改變document.location(因?yàn)檫@是當(dāng)前顯示文檔的位置)。但是,可以改變window.location (用其它文檔取代當(dāng)前文檔)window.location本身也是一個(gè)對(duì)象,而document.location不是對(duì)象2008-12-12
javascript中call,apply,bind函數(shù)用法示例
這篇文章主要介紹了javascript中call,apply,bind函數(shù)用法,結(jié)合實(shí)例形式分析了call,apply,bind函數(shù)的功能、使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2016-12-12
JS實(shí)現(xiàn)列表的響應(yīng)式排版(推薦)
列表的響應(yīng)式排版,首先每行固定好個(gè)數(shù),然后隨頁(yè)面寬度調(diào)整個(gè)數(shù)和大小,保證圖片的的可讀性及美觀。接下來小編給大家?guī)韺?shí)現(xiàn)思路介紹,一起看看吧2016-09-09
深入了解JavaScript中的二進(jìn)制操作及位掩碼應(yīng)用
在JavaScript中,二進(jìn)制操作可以說是一項(xiàng)非常強(qiáng)大和有用的技能,尤其是在處理數(shù)據(jù)和位掩碼時(shí),它們是不可或缺的,本文將介紹JavaScript中的二進(jìn)制操作,包括什么是二進(jìn)制以及如何在JavaScript中進(jìn)行二進(jìn)制操作2023-06-06
淺談JS中String()與 .toString()的區(qū)別
下面小編就為大家?guī)硪黄獪\談JS中String()與 .toString()的區(qū)別。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-10-10
Javascript無參數(shù)和有參數(shù)類繼承問題解決方法
這篇文章主要介紹了Javascript無參數(shù)和有參數(shù)類繼承問題解決方法,本文講解了無參數(shù)類繼承的問題和有參類繼承的問題,并給出了解決方案,需要的朋友可以參考下2015-03-03

