通过使用简单的JavaScript的效果实现点击按钮区域变色,并记录变化次数

前言:本人是新生小白,JavaScript学的很菜,如有错误之处欢迎指出。

目录

1.首先我们先创建一个html文件

2.然后我们在页面中添加一个按钮和变化显示区域

3.然后我们开始写script部分代码

        1.首先我们先接收一下button和p标签

       2. 给按钮添加一个点击事件,并用函数包裹

        3.这样的话点击一下按钮,按钮会变红色,因为我们想要的效果是点击按钮,让颜色在蓝色和红色之间变化,所以我们要继续设置,所以这里我们需要用到if函数

        4.这里的意思是如果var flag = true;成立就执行if里的条件

        5.这里的意思是如果var flag = true;不成立就执行else里的条件

        6.其实到这里我们已经实现了点击按钮切换颜色的效果,然后我们继续写记录颜色变化的代码

        7.现在继续往下写文字部分

         8.这样就实现了所有的效果

   4.最终代码

        小提示:这里如果大家想要一开始按钮就是蓝色,可以在style样式里添加上方代码,效果会更加美观。


1.首先我们先创建一个html文件

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
	</body>
</html>

2.然后我们在页面中添加一个按钮和变化显示区域

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<button>我现在是蓝色的</button>
		<p>我是用来记录次数的</p>
	</body>
</html>

3.然后我们开始写script部分代码

        1.首先我们先接收一下button和p标签

<script>
		var sum = document.querySelector('button')
		var p1 = document.querySelector('p')
		
		
	</script>

       2. 给按钮添加一个点击事件,并用函数包裹

<script>
		var sum = document.querySelector('button')
		var p1 = document.querySelector('p')
		sum.onclick = function() {
				sum.style.backgroundColor = 'red';
				sum.innerText = '我现在是红色的'
		}
		
	</script>

        3.这样的话点击一下按钮,按钮会变红色,因为我们想要的效果是点击按钮,让颜色在蓝色和红色之间变化,所以我们要继续设置,所以这里我们需要用到if函数

        

//    这里我们需要用到这个属性var flag = true;

        4.这里的意思是如果var flag = true;成立就执行if里的条件

	<script>
		var sum = document.querySelector('button')
		var p1 = document.querySelector('p')
		var flag = true;
		sum.onclick = function() {
			if (flag){
				sum.style.backgroundColor = 'red';
				sum.innerText = '我现在是红色的'
			} 
	</script>

        5.这里的意思是如果var flag = true;不成立就执行else里的条件

	<script>
		var sum = document.querySelector('button')
		var p1 = document.querySelector('p')
		var flag = true;
		sum.onclick = function() {
			if (flag){
				sum.style.backgroundColor = 'red';
				sum.innerText = '我现在是红色的'
			} else {
				sum.style.backgroundColor = 'blue';
				sum.innerText = '我又变成蓝色的了'
			}
			
		}
		
	</script>

               这里是一个重点,这个时候需要加上flag=!flag这个代码,让var flag  的值不断在true和false中变化,从而达到我们点击一下按钮,按钮颜色改变的效果,所以这里是实现变化效果的核心,并且我们需要在if判断语句执行完后在编写代码,但不可以写出onclick语句外,不然会因为浏览器执行js代码从上而下的特殊性,最下端的代码与上方相同,会把上方代码效果覆盖,颜色会一直为蓝色

        6.其实到这里我们已经实现了点击按钮切换颜色的效果,然后我们继续写记录颜色变化的代码

<script>
		var sum = document.querySelector('button')
		var p1 = document.querySelector('p')
		var flag = true;
		var sex = 0;
		sum.onclick = function() {
			if (flag){
				sum.style.backgroundColor = 'red';
				sum.innerText = '我现在是红色的'
			} else {
				sum.style.backgroundColor = 'blue';
				sum.innerText = '我又变成蓝色的了'
				sex++
			}
				flag=!flag
		}
		
	</script>

        在这里我们定义一个var sex = 0; 并且在else部分添加一个sex++,因为我们实现的需求是记录颜色变化的次数,如果想记录蓝色就放在else,反之if中。

        7.现在继续往下写文字部分

<script>
		var sum = document.querySelector('button')
		var p1 = document.querySelector('p')
		var flag = true;
		var sex = 0;
		sum.onclick = function() {
			if (flag){
				sum.style.backgroundColor = 'red';
				sum.innerText = '我现在是红色的'
			} else {
				sum.style.backgroundColor = 'blue';
				sum.innerText = '我又变成蓝色的了'
				sex++
			}
				var sum1 = "蓝色变化了" + sex + '次';
				flag=!flag
		}
		
	</script>

               这里定义一个var sum1,用来记录,至于作用请往下看

<script>
		var sum = document.querySelector('button')
		var p1 = document.querySelector('p')
		var flag = true;
		var sex = 0;
		sum.onclick = function() {
			if (flag){
				sum.style.backgroundColor = 'red';
				sum.innerText = '我现在是红色的'
			} else {
				sum.style.backgroundColor = 'blue';
				sum.innerText = '我又变成蓝色的了'
				sex++
			}
				var sum1 = "蓝色变化了" + sex + '次';
				flag=!flag
				p1.innerText = sum1
		}
		
	</script>

        这里通过innerText属性将sum1的文本内容赋值给p1

         8.这样就实现了所有的效果

   4.最终代码

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style>
			button {
				background-color: blue;
				color: aliceblue;
			}
		</style>
	</head>
	<body>
		<button>我现在是蓝色的</button>
		<p>我是用来记录次数的</p>
	</body>


	<script>
		var sum = document.querySelector('button')
		var p1 = document.querySelector('p')
		var flag = true;
		var sex = 0;
		sum.onclick = function() {
			if (flag){
				sum.style.backgroundColor = 'red';
				sum.innerText = '我现在是红色的'
			} else {
				sum.style.backgroundColor = 'blue';
				sum.innerText = '我又变成蓝色的了'
				sex++
			}
				var sum1 = "蓝色变化了" + sex + '次';
				flag=!flag
				p1.innerText = sum1
		}
		
	</script>
</html>

        

        小提示:这里如果大家想要一开始按钮就是蓝色,可以在style样式里添加上方代码,效果会更加美观。

                                                                    本人学的很菜,如果有错误欢迎大家指出,但不要来杠


版权声明:本文为tea_tea_原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。