js检测页面ajax请求 我在一个页面加了一段js,需要页面完全加载完成后执行,但是这个页面有很多内容都是通过ajax请求获取的,我无法知道何时页面完全加载完成,也不能修改别人的js,我想js能不能检测页面当前有没有http或者https请求来判断页面时候已经完成 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 假设页面上有个随机推荐位,别人做法是每3秒用ajax轮询服务器又假设有3层嵌套ajax,每层都要等到上一次ajax请求完成再发请求。如果碰到以上2种页面,你的应对策略是什么? 我给你的策略是: 5秒内检测dom是否一样,一样就表示页面加载完成了。不一样,则再次启动5秒检测。你觉得合理否?function check(success){ var interval = 5000; //5秒检测 var html = document.documentElement.innerHTML; setTimeout(function(){ if(html === document.documentElement.innerHTML){ success(); } else{ check(success); } },interval);}check(function(){ // all complete}) 不考虑循环请求的情况,假定一开始就有一批ajax请求,请求完了就不会再有 居于jquery还是什么?如果是jquery可以注册全局beforeSend 和complete 事件,jQuery.ajaxSetup放在所有jquery框架下,一个全局变量(初始0)来收集总的ajaxbeforeSend 全局变量+1,complete -1并且判断全局变量为0就说明全部请求完毕了,执行你要的代码如果不是jquery就没搞了。。只能自己查看ajax请求更新的容器,计时器定时检查容器内容是否改变,不过这个办法也不能100%检查正确,要是网络出错没跟新就没搞了 重写 window.XMLHttpRequest 进行检测http://www.jb51.NET/article/91419.htm ajax怎么接收服务器传的multipart/x-mixed-replace类型数据? 点击时怎么才能不增加呢? JS弹出框的文本能换行么? RadioButtonList的JS问题 求JS 高手解决个TAB 的问题!!! 一个<li>可以document.getElementById("")控制,多了怎么办呢? 这个提交的问题。老大们指教。 求一个链接弹出子菜单的js代码 这个方法在IE无效,在CHROME可正常执行哪错了。求教 jQuery利用循环输出列表项问题 JS 一个关于数值奇怪的问题,求大神指点 jquery如何获取其他页面内容到当前页显示?
不一样,则再次启动5秒检测。你觉得合理否?
function check(success){
var interval = 5000; //5秒检测
var html = document.documentElement.innerHTML;
setTimeout(function(){
if(html === document.documentElement.innerHTML){
success();
}
else{
check(success);
}
},interval);
}check(function(){
// all complete
})
http://www.jb51.NET/article/91419.htm