js实现点击不同的按钮后各自返回被点击的次数

一、总结

1、注意:返回的不是三个按钮总的点击数,而是每一个的

2、用全局变量的话每一个按钮要多一个函数,用闭包就很方便

二、js实现点击不同的按钮后各自返回被点击的次数

练习3:

  • 实例描述:点击按钮后自动弹出按钮被累计点击的次数
  • 案例要点:

    理解闭包的基本用法。

三、代码

截图

注意:返回的不是三个按钮总的点击数,而是每一个的

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>练习03</title>
<style type="text/css">
input{
width: 150px;
height: 80px;
border-radius: 10px;
font-size: 24px;
padding: 10px;
background: green;
outline: none;
}
</style>
</head>
<body>
<input type="button" value="按钮A" onclick="countA()">
<input type="button" value="按钮B" onclick="countB()">
<input type="button" value="按钮C" onclick="countC()">
<script>
//方案1 大于两个时候比较繁琐
var counter=0;
var counter2=0;
function count1(){ //1、全局变量适合做返回所有按钮的总点击数,否则用全局变量的话每一个按钮要多一个函数,用闭包就很方便
counter+=1;
alert('您共点击了我'+counter+'次')
}
function count2(){
counter2+=1;
alert('您共点击了我'+counter2+'次')
}
//方案2
function count() {
var counter = 0;
function increment() {
counter += 1; //2、闭包实现原理:这个匿名函数用了外面函数的变量,外面函数的变量被常驻内存,有几个匿名函数,匿名函数中用的的这个变量就有多少个在内存,
alert('您共点击了我'+counter+'次');
}
return increment
}
var countA=count();
var countB=count()
var countC=count() // function count() {
// var counter = 0;
// (function () {
// return(function(){
// counter += 1;
// alert('您共点击了我'+counter+'次');
// }
// )()
// })()
// }
</script>
</body>
</html>

js实现点击不同的按钮后各自返回被点击的次数的更多相关文章

  1. 【MFC】 点击不同的按钮后在界面同一位置显示不同的对话框内容(转)

    原文转自 http://bbs.csdn.net/topics/391039432 如图类似Tab控件的功能    但Tab控件按钮是固定的上下左右  不方便     所以想自己重新做个这种   我M ...

  2. 实现在点击asp:button按钮后,不刷新当前页面

    方法1:return false <asp:Button ID="Button1" runat="server" Text="Button&qu ...

  3. html和JavaScript,用户点击浏览器后退按钮,或者返回上一步自动刷新方式

    浏览器用户返回上一步,自动刷新 方式一. <input type="hidden" id="refreshed" value="no" ...

  4. php中点击下载按钮后待下载文件被清空

    在php中设置了文件下载,下载按钮使用表单的方式来提交 <form method="post" class="form-inline" role=&quo ...

  5. response 后刷新页面,点击按钮后,禁用该按钮

    一,正常的点击按钮后,将其灰显,全部执行完毕再正常显示. this.btnSave.Attributes.Add("onclick", "if (typeof(Page_ ...

  6. elementui switch 开关,点击确认按钮后在进行开关

    <el-table-column label="上头条" align="center"> <template slot-scope=" ...

  7. WPF 点击Calendar后,需要点击两次按钮

    主面板上有一个Calendar控件,点击选择了日期后,如果点击确认按钮,需要点击两次.这个问题的解决方法如下:     private void calendar1_PreviewMouseUp(ob ...

  8. JS实现单击按钮后弹出新的窗口页面

    点击按钮后,弹出指定大小的页面窗口. 效果图: 源码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&qu ...

  9. VS2010 使用时选择代码或双击时出错,点击窗口按钮后VS自动重启问题

    VS2010 使用时选择代码或双击时出错崩溃,点击窗口按钮后VS自动重启问题 下载补丁,打上补丁之后,重启电脑,解决了问题. WindowsXP的下载地址:Windows XP 更新程序 (KB971 ...

随机推荐

  1. POJ 3040 贪心

    贪心好题 ---. 思路: 从大到小凑C 如果不够 再从小到大补满(超过)C //By SiriusRen #include <cstdio> #include <cstring&g ...

  2. Linux-swap分区

    Linux内核为了提高读写效率与速度,会将文件在内存中进行缓存,这部分内存就是Cache Memory(缓存内存).即使你的程序运行结束后, Cache Memory也不会自动释放.这就会导致你在Li ...

  3. IDLE的自动补全功能

    IDLE的自动补全功能位于:Edit→Show Completions,但每次需要补全的时候都需要点击一次,虽然IDLE提供了一个快捷键(Ctrl + Space),但实测无效.具体操作如下图

  4. 玩转阿里云server——安装WebserverTomcat7

    1. 以root用户身份登录阿里云server 2. 使用apt-get install安装Tomcat7 sudo apt-get install tomcat7 3.安装后.Tomcat在启动时报 ...

  5. Python和C|C++的混编(二):利用Cython进行混编

    还能够使用Cython来实现混编 1 下载Cython.用python setup.py install进行安装 2 一个实例 ① 创建helloworld文件夹 创建helloworld.pyx,内 ...

  6. actionbar-去掉背景的阴影

    今天发现一个问题,就是actionbar跟界面的交界处,会有一个阴影,通过调查发现,这个阴影是actionbar的.然后通过在网上找资料,完美解决了问题.解决方法如下 1.在这个actionbar所在 ...

  7. EPC-9600I-L开发板使用

    1,开发板屏幕,先买的开发板,再买的屏幕,屏幕是7英寸的,与开发板默认烧进的内核不匹配,找板商重新要了匹配的内核,将原内核替换掉,根文件系统和uboot不变,进行重烧. 2,开发板屏幕校准准备 如果校 ...

  8. redirect_uri 参数错误

    http://www.cnblogs.com/zitjubiz/p/5935712.html http://blog.csdn.net/u014033756/article/details/52038 ...

  9. ArcGIS Engine 线段绘制

    转自ArcGIS Engine 线段绘制研究 基本步骤 构建形状 1. 创建 IPoint IPoint m_Point = new PointClass(); m_Point.PutCoords(x ...

  10. WebForm使用JQuery实现DropDownList无刷新联动

    目录(?)[-] 1  JS代码 2 页面相关控件用的是平台封装的控件普通DropDownList也可以 3 后台C代码 注意事项   原来用的微软封装的Ajax控件UpdatePannel和Scri ...