jQuery幻灯片事件顺序

时间:2013-01-21 01:08:33

标签: jquery

我在div(RTab)中显示用户定义搜索的结果,该查询在查询启动之前一直隐藏。我希望在单击搜索按钮(cmdSub)后立即显示结果div,然后发出查询。 AutoProc是一个PEAR AJAX函数,用于填充结果div。

问题是在查询完成后div会打开,而我希望在查询发送到服务器之前将其滑开。

    $("#cmdSub").click(function(){
       $('#RTab').show('slide', { direction: 'right' }, 100);
       AutoProc('UsrQuery');
    });

我尝试过很多东西,比如强制重绘UI,将我的AJAX调用绑定到RTab的show事件,并通过将display更改为none并返回block来确保hasLayout为true。似乎没有任何影响操作的顺序。它始终运行查询然后显示div!很沮丧!

我哪里错了?

编辑以显示最终更正的行:

    $('#RTab').show('slide', { direction: 'right',complete: function(){AutoProc('Query');} }, 100);

1 个答案:

答案 0 :(得分:1)

看起来你想在动画完成后运行你的查询函数,所以在complete事件上附加你的函数:

$("#cmdSub").click(function(){
   $('#RTab').show({
     complete: function(){
                 AutoProc('UsrQuery');
               },
     duration: 100
   });       
});

我不知道$.show()中的任何“方向”属性,但是......