V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
flyingkid
V2EX  ›  JavaScript

如何计数

  •  
  •   flyingkid · 2012-10-11 18:28:39 +08:00 · 3910 次点击
    这是一个创建于 4460 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我绑定了一个事件在onclick上面,我希望每点击一次就alert +1。
    也就是第一次点弹出1,第二次就是2。
    没有后端,不用cookie。允许刷新页面重置统计的数据。
    自己写了半天,点击N次,alert还是弹出1。
    11 条回复    1970-01-01 08:00:00 +08:00
    august
        1
    august  
       2012-10-11 18:34:06 +08:00
    用個 data-count="1" 來記住數據,每次彈出後加1更改
    loading
        2
    loading  
       2012-10-11 18:36:04 +08:00   ❤️ 1
    全局变量,你应该是用了局部变量
    Js
        3
    Js  
       2012-10-11 18:39:05 +08:00   ❤️ 1
    wong2
        4
    wong2  
       2012-10-11 18:44:04 +08:00
    为什么不把你的代码贴出来呢?
    013231
        5
    013231  
       2012-10-11 20:36:46 +08:00   ❤️ 1
    flyingkid
        6
    flyingkid  
    OP
       2012-10-12 00:02:04 +08:00
    @013231 我懂了。thx。
    flyingkid
        7
    flyingkid  
    OP
       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
        8
    flyingkid  
    OP
       2012-10-12 09:54:02 +08:00
    @loading 刚刚又搞了一下。我把变量放到外部(全局变量)结果就OK了。thx。
    对于函数、作用域这些印象加深了。
    hpyhacking
        9
    hpyhacking  
       2012-10-12 10:23:00 +08:00
    @flyingkid 建议恶补一下
    bigmusic
        10
    bigmusic  
       2012-10-12 12:41:07 +08:00
    闭包正解
    huaxinjiayou
        11
    huaxinjiayou  
       2012-10-13 16:53:20 +08:00   ❤️ 1
    闭包正解
    没必要全局
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   966 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 20:12 · PVG 04:12 · LAX 12:12 · JFK 15:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.