2012-12-27 100 views
-1

我想簡單地將一個變量從點擊事件傳遞到外部函數。測試未定義時,我一直收到我的console.log字符串。參數沒有傳遞到函數

這是我的點擊事件。

 $("#previous, #next").click(function() { 
     if ((this).id == 'next') { 
      slideID++ 
     } else { 
      slideID-- 
     } 
     clearInterval($('#slides').data('interval')); 
     $("ul.pagination li").removeClass("current"); 

     portfolioSwitch(slideID); 
    }); 

我使用slideID參數調用portfolioSwitch函數。我已經用我的控制檯進行了測試,以查看slideID是否存在。它帶着我想要的id回來。

在我的功能,我有這個代碼。

if (portfolioSwitch.slideID === undefined) { 
     console.log('Its undefined!'); 
} 

它回到未定義的狀態。所以我對函數的實際參數做了一個console.log。

console.log(portfolioSwitch.slideID); 

它仍然是未定義的。爲什麼不通過?

+2

什麼是'portfolioSwitch.slideID'?讓我們看看'portfolioSwitch'函數。實際上,我們來看一個[_testcase_](http://sscce.org)。 –

+3

它只是'portfolioSwitch'函數中的'slideID',而不是'portfolioSwitch.slideID' –

+0

Doh!感謝爆炸。 – wowzuzz

回答

0

代替console.log(portfolioSwitch.slideID);使用console.log(slideID);

0

可能是可變portfolioSwitch.slideID是私有的? 裏面的功能

portfolioSwitch(slideID){ this.slideID = slideID; //?

}

//使用這個要公開內部功能。