原生JS中的实现开关逻辑的四种方法

当你随着对前端学习的深入和做更多的项目时,会发现原生JS中开关逻辑是非常重要的.

注意:在运行的时候去掉注释,下面的代码仅保留第一种方式。

效果如下:(开关图片建议自己找两张,实现点击切换)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<img id="img" src="img/pic_bulboff.gif" alt=""/>
	</body>
	<script type="text/javascript">
		var imgObj = document.getElementById("img");
		//第一种方式:
//		var count = 0;//记录点击的次数
//		imgObj.onclick = function (){
//			count++;
//			if (count % 2 != 0) {
//				//奇数  --- 开
//				imgObj.src = "img/pic_bulbon.gif";
//			} else{
//				//偶数 -- 关
//				imgObj.src = "img/pic_bulboff.gif";
//			}
//		}
      //第二种方式:
//    console.log(imgObj.src);
//    imgObj.onclick = function (){
//    	//如果关,则打开
//    	//注意:此方法最需要注意的是没有报错,但是也没有结果。下面的绝对路径是通过检查和调试的方式得到的,最容易想到的是使用相对路径,但是在计算机里面不能用相对路径
//    	if (imgObj.src == "http://127.0.0.1:8020/H0202JS%E5%9F%BA%E7%A1%8003/img/pic_bulboff.gif") {
//    		console.log("开");
//    		imgObj.src = "img/pic_bulbon.gif";//开
//    	} else{
//    		console.log("关");
//    		imgObj.src = "img/pic_bulboff.gif";//关
//    	}
//    	
//    }

    //第三种方式:最常规的逻辑思路,常用
//  假设 true 灯亮 false 灯灭
//  var onOff = false;
//  imgObj.onclick = function (){
//  	  if (onOff == false) {
//  	  	imgObj.src = "img/pic_bulbon.gif";//开
//  	  	onOff = true;//改变状态
//  	  } else{
//  	  	imgObj.src = "img/pic_bulboff.gif";//关
//  	  	onOff = false;//改变状态
//  	  }
//  	  
//  	  
//  }
     //第四种方式: 假设 true 灯亮 false 灯灭
//   var isT = false;
//   imgObj.onclick = function (){
//   imgObj.src = isT == false ? "img/pic_bulbon.gif" : "img/pic_bulboff.gif";
//   isT = !isT;//每次对结果取反,改变状态
//   }
//     
	</script>
</html>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尔嵘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值