js中一些实用的小工具

js中一些实用的小工具

我们在使用js的过程中,会经常使用一些小的控件使我们的页面的功能更为强大和完善。当我们在浏览一些页面的时候,我们会发现许多随着我们的点击而出现的一些功能。现在,我来简单介绍一下我对于一些功能的实现。

1.密码框可见,这个功能我们经常使用。我们可以通过点击按钮使密码框可见。

这是我的html代码,是一个输入框。

密码:<input type="password" id="inputTest" name="password" value="123456" ><input type="button" value="点击此处密码可见" id="buttonValue" οnclick="changeType()" />
下面是我的js代码
var count = 0;
function changeType(){
	var inputTest = document.getElementById("inputTest");
	var buttonValue = document.getElementById("buttonValue");
	if(count%2==0){
		inputTest.type="text";
		buttonValue.value="点击密码不可见";
	}else{
		inputTest.type="password";
		buttonValue.value="点击此处密码可见";
	}
	count++;
}

可以看出我先声明了一个全局变量count,作为点击次数的计数器。然后根据count的值修改密码输入框的type属性,实现密码框的可见和不可见。

2.计算多选框的值

这个功能通常在购物车中会体现,当我们在选择购买的东西时,会在下方弹出我们的购买总值。

<input type="checkbox" value="1" name="number" onchange = "cal()">1
<input type="checkbox" value="2" name="number" onchange = "cal()">2
<input type="checkbox" value="3" name="number" onchange = "cal()">3


首先声明了三个多选框,之后我会获取这三个多选框的checked属性值,当checked的属性值为true时,进行叠加。

function cal(){
	var numberArray = document.getElementsByName("number");
	var counts = numberArray.length;
	var total = 0;
	for(var i=0;i<counts;i++){
		if(numberArray[i].checked==true){
			total =parseInt( total) +parseInt( numberArray[i].value);
		}
		
	}
	var totalTest = document.getElementById("total");
	totalTest.value=total;
}

3.实现数字的递增。

我们在购物的时候,通常会发现一件事。我们可以点击按钮实现购物数量的递增和递减。这个功能同样没有那么复杂。

<input type="button" id="reductionButton" value="-" οnclick="reduction()" >
<input type="text" value="1" id="testNumber">
<input type="button" value="+" οnclick="increment()">

当我们需要实现递减递加时,需要获取我们的输入框的数字值。

function increment(){
	var testNumber = document.getElementById("testNumber");
	var value = parseInt(testNumber.value);
	value++;
	if(value>0){
		reductionButton.disabled= false;
	}
	
	testNumber.value = value;
}
function reduction(){
	var testNumber = document.getElementById("testNumber");
	var reductionButton = document.getElementById("reductionButton");
	var value = parseInt(testNumber.value);
	value--;
	if(value>0){
		testNumber.value = value;
		reductionButton.disabled= false;
		testNumber.value = value;
	}else{
		testNumber.value =0;
		reductionButton.disabled = true;
	}
	
}

这需要两个函数来分别进行实现。

4.多选框的全选,全不选以及反选。

这个也是经常会遇到的问题,这个其实可以通过修改多选框的checked属性来实现

html代码如下

<center><h1>多选框测试</h1>
<hr>
<input type="checkbox" name="sports">足球<br>
<input type="checkbox" name="sports">篮球<br>
<input type="checkbox" name="sports">乒乓球<br>
<input type="button" value="全选" οnclick="selectAll()"><input type="button" value="反选" οnclick="reverseSelection()"><input type="button" value="全不选" οnclick="noChoice()">
</center>

一共有三个函数

全选函数

function selectAll(){
	var sports = document.getElementsByName("sports");
	for(var i = 0;i<sports.length;i++){
		sports[i].checked = true;
	}
}

反选函数

function reverseSelection(){
	var sports = document.getElementsByName("sports");
	for(var i = 0;i<sports.length;i++){
		if(sports[i].checked==true){
			sports[i].checked=false;
			continue;
		}else{
			sports[i].checked=true;
			continue;
		}
	}
}

全不选函数

function noChoice(){
	var sports = document.getElementsByName("sports");
	for(var i = 0;i<sports.length;i++){
		sports[i].checked = false;
	}
}

4.滚动图测试

我们需要两个函数,一个是setInterval()和clearInterval();

一个是设置定时执行某一个函数,一个是清除刚才设置的定时执行任务。

首先看一下我的html代码。

<img id="kobe" alt="kobe" src="../img/kobe01.jpg" width="100px" height="100px" >
<br><input type="button"  value="停止滚动" οnclick="stop()"></input>

然后是我的js代码,我是设置一个全局变量count,根据它的值来设置Img的src属性值.

var count = 0;
var test = setInterval("changePic()",1000);
function changePic(){
	var pic = document.getElementById("kobe");
	if(count%3==0){
		pic.src="../img/kobe01.jpg";
	}
	if(count%3==1){
		pic.src="../img/kobe02.jpg";
	}
	if(count%3==2){
		pic.src="../img/kobe03.jpg";
	}
	count++;
}

同样可以通过点击停止滚动按钮实现停止滚动

function stop(){
	clearInterval(test);
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值