Javascript 如何逐个执行jquery代码?
如何逐个执行jquery代码? 当我完成任务时,我想先做“功能1”。然后做“功能2” 谢谢Javascript 如何逐个执行jquery代码?,javascript,jquery,Javascript,Jquery,如何逐个执行jquery代码? 当我完成任务时,我想先做“功能1”。然后做“功能2” 谢谢 <script type="text/javascript"> jQuery(document).ready(function(){ $(document).ready(function(){ //function 2, jqeury.ajax }); $(document).ready(function(){ //function 3, jqeury.
<script type="text/javascript">
jQuery(document).ready(function(){
$(document).ready(function(){
//function 2, jqeury.ajax
});
$(document).ready(function(){
//function 3, jqeury.json
});
$('#col').load("home.html");
//function 4, jqeury.load
});
});
</script>
<script type="text/javascript">
jQuery(document).ready(function(){
//function 1, a jquery slider plungin
});
</script>
jQuery(文档).ready(函数(){
$(文档).ready(函数(){
//函数2,jqeury.ajax
});
$(文档).ready(函数(){
//函数3,jqeury.json
});
$('#col').load(“home.html”);
//函数4,jqeury.load
});
});
jQuery(文档).ready(函数(){
//函数1,jquery滑块
});
您不需要这么多文档就绪调用。一个就够了
如果您的意思是希望在收到来自您正在进行的AJAX调用的响应后调用每个方法,请将代码放入回调中
$(document).ready(function(){
one(); //call the initial method
});
function one(){
$.get('url', {}, function(data){
two(); //call two() on callback
})
}
function two(){
$.getJSON('url', {}, function(data){
three(); //ditto
})
}
function three(){
$('#selector').load('url');
}
医生
使用
设置超时
功能
function f1(para) {
// ...
// do work;
setTimeout(f2, 10);
}
function f2() {
// ...
// do work
setTimeout(f3, 10);
}
jQuery(文档).ready(函数(){
function2(){//声明函数2将在此处执行的操作
//函数2,jqeury.ajax
}
函数3(){
//函数3,jqeury.json
}
$('#col').load(“home.html”);
//函数4,jqeury.load
});
});
jQuery(文档).ready(函数(){
//函数1,jquery滑块
function2();//在1之后执行函数2
功能3();
});
看起来您正在执行三个ajax调用。从jQuery 1.5开始,我们现在有一个从ajax调用返回的(技术上是一个对象),因此您可以像这样链接它们:
$(function() { // this is a document ready function. it's all you need.
$.ajax(/* your ajax specs */).done(function() {
$.getJSON('somepath').done(function() {
$('#container').load('etc.');
});
});
});
ready()使用回调函数,如下所示
<script type="text/javascript">
function ajaxfun() {
//function 2, jqeury.ajax
//in ajax callback call the jsonfun();
}
function jsonfun(){
//function 3, jqeury.json
//after json function add the next function in it callback.
}
</script>
<script type="text/javascript">
jQuery(document).ready(function(){
//function 1, a jquery slider plungin
//Call ajaxfun() here to execute second.
});
</script>
函数ajaxfun(){
//函数2,jqeury.ajax
//在ajax回调中调用jsonfun();
}
函数jsonfun(){
//函数3,jqeury.json
//在json函数之后,在回调函数中添加下一个函数。
}
jQuery(文档).ready(函数(){
//函数1,jquery滑块
//在此处调用ajaxfun()以执行第二个命令。
});
如果您能给我们更多的代码,而不使用多个文档就绪功能,您就不必多次侦听文档就绪。因此,请准备好父文档,并向我们展示函数2和3的精髓,通常当您使用类似的匿名jquery函数时,您可以在函数调用后使用逗号来调用下一个函数。默认情况下,所有操作都将按一次一件的顺序运行,除非另有规定-例如异步加载ajax。可能重复:如果您使用的是Jquery 1.5及更高版本,则可以使用.when和.then(延迟对象)setTimeout是一个糟糕的解决方案。您不能保证ajax调用将在下一个setTimeout过期并执行之前完成。这将导致竞争条件。函数2和3不会在触发之前等待对服务器的异步调用完成。@stephen如果我想等待每个post完成,我不会使用asynch。好的,有一个选项可以关闭它,这是正确的:如果您想锁定浏览器,直到同步请求得到解决@斯蒂芬:嗯,是的,我明白你的意思:)
<script type="text/javascript">
function ajaxfun() {
//function 2, jqeury.ajax
//in ajax callback call the jsonfun();
}
function jsonfun(){
//function 3, jqeury.json
//after json function add the next function in it callback.
}
</script>
<script type="text/javascript">
jQuery(document).ready(function(){
//function 1, a jquery slider plungin
//Call ajaxfun() here to execute second.
});
</script>