关于变量赋值问题

我想点击的时候更新num的数据来释放if里的代码为什么会执行不到

            var num=null;
            var timer=null;
            if (num != null) {//这里一值都执行不了,下面点击已赋值了啊num = $(this);
                  ........
            } else {
                num = $("a:first");//这里默认显示第一个,然后我想通过下面的点击去让上面的全局变量num更新有值了就去执行if里的代码,可下面点击了没反应????
                timer = setInterval(function() {
                    ......
                }, 30);
            }

            $("a").on("click",function() {
                clearInterval(timer);//这里的全局变量为什么可设置
                num = $(this);//而这里的num全局变量却赋不到

            });
阅读 2.9k
2 个回答

你这不是变量赋值的问题,而是程序执行流程的问题了。
click赋值的时候,程序已经执行到if之后了,不会再回头来执行了。
如果需要不停的判断,就把上面的函数封装起来,在click中调用。
或者写个计时器轮询~咳....

只有在点击的时候才会赋值呀。

js if (num != null) {
    ...
}

这段代码一开始执行过了,第二次不会执行到这里了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题