Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript js,延迟一个函数_Javascript_Jquery - Fatal编程技术网

Javascript js,延迟一个函数

Javascript js,延迟一个函数,javascript,jquery,Javascript,Jquery,因此,我有两个js函数: 第一个js附加了一个新的div容器。 第二个js对这个新分区做了一些事情: 例如: my_html = '<div class="second"></div>' jQuery('.first').html(my_html); jQuery('.second').html("Yay"); 这是我收到的警报序列: Alert 1: "first function" Alert 2: "After:" Alert 3: "before: some d

因此,我有两个js函数:

第一个js附加了一个新的div容器。 第二个js对这个新分区做了一些事情:

例如:

my_html = '<div class="second"></div>'
jQuery('.first').html(my_html);
jQuery('.second').html("Yay");
这是我收到的警报序列:

Alert 1: "first function"
Alert 2: "After:"
Alert 3: "before: some data"
“之前的
”警报应该首先出现,但我最后才收到

我做错了什么?

至于拖延:

setTimeout(yourFunction, 1);
在您的示例中,您还可以在第一个查询对象之后链接,而不是启动第二个选择器:

jQuery('.first').html(my_html)
      .filter('.second').html("Yay");

你不需要做任何事情,它应该会起作用,这里有一个

但是,您也可以这样做:

my_html = '<div class="second"></div>'
$(my_html).filter(".second").html("Yay").appendTo(".first");
my_html=''
$(my_html).filter(“.second”).html(“Yay”).appendTo(“.first”);

下面是代码同步运行的

,该代码实际上可以工作,“第二个”在运行jQuery('.second').html(“Yay”)时存在;显示您的实际代码。嗯,我将再次检查这是否是问题所在。谢谢。正如@MarcosCasagrande所说的,代码看起来很好,应该可以像你期望的那样工作。您是否将JS代码包装在函数中?这将延迟代码,直到车身结构准备就绪。或者把你的JS代码移到标签的末尾。我做了一个编辑。你们能看一下吗?谢谢使用超时的解决方案非常糟糕!他并不打算“延迟”第二个功能,只是直到第一个功能完成。在等待一个“async”(其中.html()不是BTW)函数完成,然后调用回调函数方面,我的帖子中包含了一些函数。你能帮我看一下吗?谢谢您说“之前”警报应该首先出现,但这可能不正确。例如,如果在某个函数中有一个异步调用,例如,
$.get(someUrl).done(此函数)
您将得到所描述的行为。
my_html = '<div class="second"></div>'
$(my_html).filter(".second").html("Yay").appendTo(".first");