能不能控制jquery 的trigger事件同步执行

[code="js"]
function expandAll(parent)
{
var nodes=$("li.bbit-tree-node>div", parent);
nodes.each(function (){
var item=$(this);
var imgs = item.find("img.bbit-tree-elbow-end-plus,img.bbit-tree-elbow-plus");
imgs.trigger("click"); //异步执行click事件
var nextparent=item.next(); //需要click事件完成后才能获得下一个元素
expandAll(nextparent);
});
}[/code]
问题是这样的:
1、[code="js"]imgs.trigger("click")[/code]异步执行click事件,生成一个元素
2、[code="java"]var nextparent=item.next();[/code]获取步骤1生成的元素。
这时候问题就出来了,步骤一的事件还没执行完成,就已经执行步骤2,导致无法获得步骤1生成的元素
,哪位帮忙解决一下,感激万分

你可以先看看下面这个例子:
[code="java"]

<script type="text/javascript">
$(function() {
    var div = $("#mybutton"); //你的按钮。
    div.click(function(e,text) {//对应下面click时间
        var text = text + '如果是点击click,他不会吃text这个参数的值';
        alert(text);
    });
    div.trigger("click","这里是trigger事件");//click对应上面click事件
});
</script>

[/code]

可能对你有帮助。

你说的异步是指发生了AJAX的异步动作?

JQuery中Ajax方法和动画方法是有回调函数的

js基于事件的处理就是异步的,你之需要在img上定义一个对click事件的监听器,然后把点击生成的对象作为参数出入监听器即可。gsdhaiji_cai 给出的代码基本上就是这个思路。