ajaxStart事件无效原因及不同页面显示相同加载弹窗

来源:互联网 发布:linux 修改路由表 编辑:程序博客网 时间:2024/06/11 10:43

想用ajaxStart来触发一个弹窗来显示ajax加载慢时加载的loading图标,然后这么写

<div id="loading" >加载中</div>

$(document).ready(function (){$("#loading").ajaxStart(function (){console.log(1)$(this).show();}).ajaxStop(function (){//ajaxStop改为ajaxComplete也是一样的$(this).hide();console.log(2)});});


怎么也没起作用,通过jQuery 1.9+ ajaxStart事件无效,无法被触发的原因才知道在jq1.9以上版本就得写成

$(document).ready(function (){$(document).ajaxStart(function () //"#loading"改为document,针对全局文档{$("#loading").show();//this 改为弹窗节点}).ajaxStop(function (){//ajaxStop改为ajaxComplete也是一样的$("#loading").hide();});});

但是这种页面的加载只能针对当页面来显示,要想全部网页加载都要有这个loadding页,那只能用js进行dom节点生成

var html = $('<div id="loading" >加载中</div>');$(document).ajaxStart(function (){$("body").append(html);}).ajaxStop(function (){//ajaxStop改为ajaxComplete也是一样的html.remove();}); 


阅读全文
0 0