我想定義默認爲我的插件默認,這是javascript代碼:定義插件
var opts = {
'width': 957,
'height': 590,
'left': ($(window).width()/2) - (this.width),
'top': ($(window).height()/2) - (this.height)
};
但opts.left
回報NaN
。 什麼是問題?
編輯:我想使用寬度從我的對象在我的對象。
我想定義默認爲我的插件默認,這是javascript代碼:定義插件
var opts = {
'width': 957,
'height': 590,
'left': ($(window).width()/2) - (this.width),
'top': ($(window).height()/2) - (this.height)
};
但opts.left
回報NaN
。 什麼是問題?
編輯:我想使用寬度從我的對象在我的對象。
this.width
不是一個數值。
的NaN原產值時算術運算導致未定義的或不可表示的值
NaN值產生的。這些值不一定代表溢出條件。 NaN也是由於試圖強制轉換爲非數字值的數字值,而這些數字值沒有可用的基本數值。
更新基於註釋:
this
不是對象,它的函數的調用者。因此this.width
不會給你財產的width
。
最有可能的,this.width
正在恢復你一個非數字的值。undefined
對於前:100 - undefined
將返回NaN
嘗試使用$(this).width()
和$(this).height()
,
var opts= {
'width': 957,
'height': 590,
'left': ($(window).width()/2)-($(this).width()),
'top': ($(window).height()/2)-($(this).height())
};
在有效範圍內的上述應工作提供了this
。
你需要告訴我們更多關於這個opts在哪裏的內容。如果你有這裏面的插件代碼,你打電話這就像一個jQuery函數..那麼'$(this).width()'應該讓你的寬度 – 2012-04-16 21:33:51
@Vega讓我解釋一下,我有一個插件,我想設置寬度,高度,左側和右側默認情況下,所以我創建了一個對象,並在此對象上我有4個屬性(寬度,高度,左,右)。寬度和高度是一個常數(寬度:957和高度:590)現在我想從這個屬性計算左邊和頂部的值,所以我需要在我的對象中的這個屬性的值。 – MajAfy 2012-04-16 21:56:37