(它的很多剝離出來)由於代碼的函數
// A data set
$.DataArea = function() {
// Default options
$.extend(this, {
'class': "DataSet",
'bars': new Array(),
'container': null,
'containerId': null,
'gridsize': 20,
'width': 400,
'height': 400,
'currentSelectedBar': 0
});
// Add a bar to this object
this.addBar = function(startDate, endDate, label, styleID) {
// When the bar is clicked
$('#' + barID).click(function() {
alert($(this).currentSelectedBar);
if (this.currentSelectedBar != undefined)
$('#' + this.currentSelectedBar).fadeIn("slow");
this.currentSelectedBar = barID;
$('#' + barID).fadeTo("slow", 0.5);
});
}
當我alert($(this).currentSelectedBar);
它永遠是爲未定義,這不是正確的值設置裏面引用此。任何想法,爲什麼這可能是?
這個想法是,當你點擊一個酒吧,淡出它,當你點擊另一個最後一個酒吧淡出淡入。
我覺得你不只是這一個問題了。由於@Robert在他的評論中正確地指出了我的(現在已刪除的)答案,「this」指向你綁定事件處理程序的DOM元素。 –