我實現類(I稱之爲RowsEditor)和它的子類(I稱之爲DateRowsEditor)與jQuery代碼類似於:jQuery的JavaScript的子類和屬性
function create_RowsEditor(tableId) {
var rowsEditor = {
tableId: tableId,
quit_row: function(ctl) { /*...*/ }
};
$('#'+tableId).click(function(event) {
var tr = event.delegateTarget;
rowsEditor.quit_row(tr);
});
return rowsEditor;
}
function create_DateRowsEditor(tableId) {
var rowsEditor = $.extend({}, create_RowsEditor(tableId), {
quit_row: function(ctl) { /*...*/ }
};
return rowsEditor;
}
然後,我創建類型DateRowsEditor的目的():
var rowsEditor = create_DateRowsEditor('come'):
麻煩的是,用戶的點擊quit_row()被調用,通過create_RowsEditor()創建不使用,應create_DateRowsEditor()創建的派生類對象的對象。
如何以結構化和麪向對象的方式正確地做到這一點?
var rowsEditor = {
tableId: tableId,
init: function() {
var self = this;
$('#'+tableId).handleRowsBlur(function(event) {
var tr = event.delegateTarget;
self.quit_row(tr);
});
return this;
},
...
和創建對象是這樣的::
/*var rowsEditor =*/ create_ComeEditor('come').init();
這是正確的方式來解決我的問題,因爲這