如何计数

2012-10-11 18:28:39 +08:00
 flyingkid
我绑定了一个事件在onclick上面,我希望每点击一次就alert +1。
也就是第一次点弹出1,第二次就是2。
没有后端,不用cookie。允许刷新页面重置统计的数据。
自己写了半天,点击N次,alert还是弹出1。
3659 次点击
所在节点    JavaScript
11 条回复
august
2012-10-11 18:34:06 +08:00
用個 data-count="1" 來記住數據,每次彈出後加1更改
loading
2012-10-11 18:36:04 +08:00
全局变量,你应该是用了局部变量
Js
2012-10-11 18:39:05 +08:00
wong2
2012-10-11 18:44:04 +08:00
为什么不把你的代码贴出来呢?
013231
2012-10-11 20:36:46 +08:00
flyingkid
2012-10-12 00:02:04 +08:00
@013231 我懂了。thx。
flyingkid
2012-10-12 00:07:29 +08:00
@Js 你的用户名真拉风。代码更拉风。就是这个。你这个我暂时没看懂。
你这个很简洁!

```
<script type="text/javascript">
window.onload = function () {
var btn = document.getElementsByTagName('button')[0]
btn.onclick = (function() {
var n = 0
return function() {
alert(++n)
}
})()
}
</script>
```
flyingkid
2012-10-12 09:54:02 +08:00
@loading 刚刚又搞了一下。我把变量放到外部(全局变量)结果就OK了。thx。
对于函数、作用域这些印象加深了。
hpyhacking
2012-10-12 10:23:00 +08:00
@flyingkid 建议恶补一下
bigmusic
2012-10-12 12:41:07 +08:00
闭包正解
huaxinjiayou
2012-10-13 16:53:20 +08:00
闭包正解
没必要全局

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/49763

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX