2012-07-22 74 views
2

我有一个全局变量,在小1或2按钮的mouseup上设置为$(this)。基于mouseup上全局变量的比较,我的代码应该做些什么。当我通过Firebug的单步执行代码,该变量被设置,然后,我通过几个步骤更行,我得到如下:Javascript全局变量总是undefined onmouseup

ReferenceError: little_r is not defined.

我用了一个alert看到全球和其总价值未定义。为什么全局变量不保存该值?

I have a demo here

回答

4

原因LITTLE_R(等)总是空是因为你已经添加LITTLE_R作为参数:因此

$('.small_r').on(mouseup, function(evt, little_r) { 
    alert (little_r); 
if (little_r == null) { 

创建一个局部变量。当您尝试访问little_r时,您正在访问本地(未定义)版本。

我什么也看不见你最终想实现,但你的问题在于与局部变量遮蔽你的全球版本