あるオブジェクトのキーを同じオブジェクト内$thumbnailContainer
の別のオブジェクトの値に設定することはできますか?thumbnailImg
gallerySelectors
例:
var gallerySelectors = {
'$thumbnailContainer' : $('#thumb'),
'thumbnailImg' : this.$thumbnailContainer.find('img')
};
あるオブジェクトのキーを同じオブジェクト内$thumbnailContainer
の別のオブジェクトの値に設定することはできますか?thumbnailImg
gallerySelectors
例:
var gallerySelectors = {
'$thumbnailContainer' : $('#thumb'),
'thumbnailImg' : this.$thumbnailContainer.find('img')
};
いいえ、残念ながらありません。幸いなことに、代替手段は同じように単純です。
var gallerySelectors = {
$thumbnailContainer: $('#thumb')
};
gallerySelectors.thumbnailImg = gallerySelectors.$thumbnailContainer.find('img');
オブジェクトをインラインで渡したいことが問題である場合は、それを行う関数を作成することもできます。
いいえ、this
表示されている状況ではオブジェクトにバインドされないためです。
これを行う方法はないと思います。
あなたは試すことができます
var gallerySelectors = {
'$thumbnailContainer' : $('#thumb'),
'thumbnailImg' : gallerySelectors.$thumbnailContainer.find('img')
}; ^--------------- NOTE!!!
しかし、これがどこでも機能することを信頼できるかどうかはわかりません。メンバーが常に順番に初期化されることが保証されているかどうかを確認するには、言語仕様を調べる必要があると思います。
私は簡単なルートを取るでしょう:
var gallerySelectors = {
'$thumbnailContainer' : $('#thumb'),
'thumbnailImg' : $('#thumb').find('img')
};