1

Jquery アニメーションが発生した後にアクションを実行する必要があります。コールバック関数を使用してこれが可能であることは知っていますが、ここにキッカーがあります。私は EasyUI フレームワークを使用しています。私の関数は、レイアウトの「OnExpand」イベントにプラグインされています。

彼らのドキュメントによると、このイベントは展開イベントが発生した後に発生すると言われていますが、実際にはそうではありません。アニメーションと同期していないため、アニメーション イベントが完了する前にトリガーされます。

これを回避する方法があるかどうかわかりません...どんなアイデアでも大歓迎です... EasyUI フォーラムにアクセスしようとしましたが、私の参加リクエストが承認されません。

ありがとうございました

$(regionPanel).panel({
onExpand : function() {
       ...do something here after expand event completes...
    }
});
4

1 に答える 1

1

jquery.easyui.min.js の次のメソッドを変更してみてください。

function _30f(_310,_311){
    var _312=$.data(_310,"layout").panels;
    var _313=_314();
    var p=_312[_311];
    if(p.panel("options").onBeforeExpand.call(p)==false){
    return;
     }
   var _315="expand"+_311.substring(0,1).toUpperCase()+_311.substring(1);
   _312[_315].panel("close");
   p.panel("panel").stop(true,true);
   p.panel("expand",false).panel("open").panel("resize",_313.collapse);
   p.panel("panel").animate(_313.expand,function(){
   _2e9(_310);
    p.panel("options").onExpand.call(p);//this is the added line
 });
于 2013-03-22T19:44:01.407 に答える