我正试图通过移动ajax调用来加速我的一些网站
情况如下:
我有一个页面,里面有一些画布+其他数据。
请求页面时,会加载“其他数据”。在$(document).ready();我有一个获取画布数据的函数。这是使用ajax完成的。
我想知道我是否可以在$(document).ready()之前进行ajax调用,但是只有在dom准备就绪时才能成功调用ajax(即渲染画布)。
所以:
$(document).ready(function(){
$.ajax({
url: '/someurl'
dataType: 'json',
success: function(response){
startDrawOnCanvas(stage, response.data);
}
});
}
这有效,但我喜欢这样的东西
$(document).ready(function(){
}
$.ajax({
url: '/someurl'
dataType: 'json',
success: function(response){
//only fire once dom is ready for it
startDrawOnCanvas(stage, response.data);
}
});
答案 0 :(得分:5)
你可以做;
$.ajax({
url: '/someurl'
dataType: 'json',
success: function(response){
$(document).ready(function () {
//will fire once dom is ready for it
startDrawOnCanvas(stage, response.data);
});
}
});
... jQuery将检测$(document).ready()
是否已经运行,如果有,则立即运行回调。或者,它会像往常一样推迟它。