UI.Layout を使用して、ExtJs レイアウトに似た動作を作成しようとしています: 水平ペインを閉じたり開いたりすると、リサイザーが非表示になり、スライド効果で再表示されます。
これは、イベントの後に効果が表示されるため、ペインを閉じるのは簡単でしたがonclose
、ペインを開いたときに同じ動作を適用するのは非常に困難です。
リサイザーに適用される効果に関係なくトリガーのイベントであるためonopen
、リサイザーのスライドが完了するまでペインを開くのを遅らせる方法が見つかりません。
関連するコードは次のとおりです。
outerLayout = $('#outer-layout').layout({
west : {
// ...
onclose_start : function() {
hideResizer('west');
},
onclose_end : function() {
styleResizer('west');
showResizer('west');
animateResizerOnClose('west');
},
onopen_start : animateWestResizerOnOpen
}
// ...
});
function animateWestResizerOnOpen() {
$(this).parent().delay(1400).queue(function() {
$('#outer-layout').layout().open('west');
}).hide('slide', 300);
}
ここで何が問題なのですか?