2014-09-26 71 views
1

我正在處理我的第一個jQuery插件,並在傳遞0作爲參數時遇到一些麻煩。jQuery將參數傳遞給插件

我想要做的就是設置element.eq(parameter),這可以很好地適用於1,2,3,4等,但0不起作用。它可以工作,如果我輸入element.eq(0)

console.log輸出:

0 
null x2 

我有一個簡單jsfiddle這個問題

因此,我將如何去了解,使之出現的第一個孩子?

$.fn.miobi.defaultOptions = { 
     page: null, 
     pageActive: null 
    }; 

$('body').miobi({ 
    page: '.page', 
    pageActive: 1 // not working with 0 
}); 
+0

我知道它輸出0,但它沒有顯示元素0 =第一胎 – 2014-09-26 16:35:49

回答

4

的問題是,0是falsey值,因此而不是測試,如果它是truthy(它不是),明確檢查它被不-未定義:

if (typeof options.pageActive !== 'undefined') { 

JS Fiddle demo

+0

啊,謝謝!沒想到那個! :) – 2014-09-26 16:34:22

+1

不客氣,你不是第一個*咳嗽* ... – 2014-09-26 16:34:46