Javascript 全局变量在mouseup 上始终未定义

标签 javascript variables undefined global

我有几个全局变量,在小 1 或 2 按钮的 mouseup 上被设置为 $(this) 。根据 mouseup 上全局变量的比较,我的代码应该做一些事情。当我单步执行 Firebug 中的代码时,变量被设置,然后当我单步执行几行时,我得到以下结果:

ReferenceError: little_r is not defined.

我使用alert来查看全局值,但它始终未定义。为什么全局变量没有保存值?

I have a demo here

最佳答案

little_r(等)始终为空的原因是因为您已将little_r作为参数添加到:

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

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

我看不到你最终想要实现的目标,但你的问题在于局部变量遮蔽了你的全局版本

关于Javascript 全局变量在mouseup 上始终未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11596989/

相关文章:

javascript - 使用异步在 Node JS 中一个接一个地下载视频?

java - 变量在内部类中访问。需要宣布最终。但我不想宣布最终

c# - 将代码分配给变量

c++11 - clang++ mac os x c++11 链接器问题

php - Zend_Log_Writer_Db - 调用未定义的方法 Zend_Config::insert()

javascript - 如何在 JS 中从 ArrayBuffer 写入文件

javascript日期问题

javascript - 为什么在我通过 JavaScript 中的嵌套 for 循环获得我想要获得的输出后却得到 "undefined"?

javascript - 在 ng-repeat 中使用变量

python - 下面的二次方程代码有什么问题?