2012-07-22 65 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時,您正在訪問本地(未定義)版本。

我什麼也看不見你最終想實現,但你的問題在於與局部變量遮蔽你的全球版本