次の関数があり、デフォルト値で実行しようとしています。
init: function(userConfig) {
var config = {};
Ext.apply(config, userConfig, {
delegate: 'div.thumbnailNameProfileListingItem span'
});
Ext.getBody().on({
scope: this,
click: function(a, b, c, d, e) {
console.log(a);
},
delegate: config.delegate
});
}
init();
「デリゲート」プロパティのデフォルト値で示される DOM 要素をクリックすると、「クリック」に提供された関数が呼び出されません。この時点では、要素はまだ DOM に存在しません。これらの要素は、ユーザーがトリガーした別のイベントによって後で追加されます。
ただし、「デリゲート」プロパティの値を
delegate: 'div.thumbnailNameProfileListingItem span'
に
delegate: 'span'
この関数は、既存の DOM 要素と後で追加された DOM 要素の両方に対して呼び出されます。ExtJS での委譲の使用には、親要素と子要素にまたがるセレクターを許可しないという制限がありますか、それとも何か間違っていますか?