在jQuery中按顺序执行事件

时间:2009-08-06 08:48:27

标签: jquery jquery-ui

我有一小块jquery,我隐藏在那里然后显示一个div。两个事件完成后,我执行几行代码,如下所示:

 $(".subFields").hide("slide", { direction: "up" }, 250, function() {           
            $(".subFields").show("slide", { direction: "up" }, 250, function() {                
                container.addClass("formfield");
                container.removeClass("formfieldCurrent");
                fillOpenFields($(this).val());           
            });
        });

问题是show事件中的代码是出于某种原因进入无限循环,任何想法。

3 个答案:

答案 0 :(得分:0)

乍一看,我无法看到这个问题。 fillOpenFields的功能是什么?

答案 1 :(得分:0)

您使用类选择器,这意味着您可以获得多个匹配的元素。隐藏和显示将针对找到的每个元素运行,因此这可以解释为什么它似乎发生了无限循环。

你有这个班级的多个元素吗?

可以粘贴标记和完整的js。

最好尝试将节点名称用作选择器的一部分

e.g $('div.someClass');

否则jQuery必须循环整个dom来测试每个元素而不是使用getElementsByTagName

答案 2 :(得分:0)

问题出在fillOpenFields方法中,对此造成的不便表示歉意