豪仕知识网--知识就是力量!

微信
手机版
生活常识

利用iframe实现javascript无刷新载入整页_js iframe 刷新

作者 :有胸为大 2024-01-02 14:27:59 围观 : 评论

利用iframe实现javascript无刷新载入整页_js iframe 刷新

豪士君测试所用平台

纪录美好生活,一起观趣事,这里包罗IT知识,豪仕知识网是信息的海洋,有你听不到的故事,接下来我们一起来看看利用iframe实现javascript无刷新载入整页。

◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲HTTP://WWW.hAoz.net███████████████████████████东方金报网

jquery有一个load()方法,使用方法如:$("#p").load("/index.html");这样就可以将index.html加载到ID为p的容器中,

用iframe也可以实现,但没有上述做法完美,参见discuz那些网站,如登陆弹出一个层,也是载入的一个页面,但我发现状态栏左边出现的是 正在打开about:blank,不知道是不是将iframe的src设为about:blank,然后在编辑iframe呢?但注意了,查看源代码的时候却看不到载入页面的时候是看不到载入的这个页面的源代码,不知道是不是才用了跟jquery一样分析head,然后将载入页面的头部信息添加到主页面的头部,然后用eval()函数执行javascript代码,,求解?

◐◐◐◐●☛█▼▲豪仕知识网███████豪仕知识网HTtp://www.haoZ.net▼▲▼▲▼▲▼▲▼●●●●●●●▼▲▼▲▼▲

以下我用了一个页面做为承载载入页面源代码的容器,命名为do.html,传递一个参数uri告诉do.html要载入的页面!

HTTP://WWW.haoz.net◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐豪仕知识网

示例DEMO:http://mi.8866.org:2/management.aspx/ 直接点登陆既可

该页面加载了两个js文件

1

◐◐◐◐●☛█▼▲豪仕知识网███████豪仕知识http://www.Haoz.net▼▲▼▲▼▲▼▲▼●●●●●●●▼▲▼▲▼▲

2

do.html的源代码为:

◐◐◐◐●☛█▼▲豪仕知识网HT●☛█▼▲◐◐◐◐●☛█▼▲

载入中...

File:do.js 1 document.write("");

2 document.write("");

http://www.haoz.net●☛█▼▲◐●☛█▼▲◐◐◐◐●☛█▼▲◐豪仕知识网●☛█▼▲豪仕知识网

3 window.onload=function(){

4 j.plus.loadPage({uri:"/",time:1},{

●☛█▼▲豪仕知识网◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲

5 start:function(){/*开始加载的回执函数*/},

●☛█▼▲豪仕知识网◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲

6 over:function(){/*加载完成的回执函数*/}});

◐◐◐◐●☛█▼▲豪仕知识网http://www.haOz.net▼▲▼▲▼▲▼▲▼●●●●●●●▼▲▼▲▼▲

7 } loadPage的定义如下: 01 if(!typeof(window.j))window.j=new js();

02 j.plus=new plus();

03 function plus(){}

◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲HtTp://wWW.haoz.net豪仕知识网●●●●●●●●●●●●●●●●●●●●●●●●●●

04

05 plus.prototype.loadPage=function(r,callback,e,times){

06 /*

◐◐◐◐●☛█▼▲豪仕知识网███████豪仕知识网HTtp://www.haoZ.net▼▲▼▲▼▲▼▲▼●●●●●●●▼▲▼▲▼▲

07 r 请求; r.time : 等待加载时间(毫秒);

◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲HtTp://wWW.haoz.net豪仕知识网●●●●●●●●●●●●●●●●●●●●●●●●●●

08 callback :回执函数 (callback.start(),callback.over())

09 e.element 页面容器; */

10 if(!r.uri)alert('page uri parameters not be found!');

◐◐◐◐●☛█▼▲豪仕知识网███████http://www.haOZ.net▼▲▼▲▼▲▼▲▼●●●●●●●▼▲▼▲▼▲

11 var aj=new ajax();

12 aj.request(r,{

13 start:function(){if(callback.start)callback.start();if(e)e.innerHTML='加载中..';else{document.body.innerHTML='加载中';}},

◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲HTTP://WWW.hAoz.net███████████████████████████东方金报网

14 error:function(x){if(e)e.innerHTML='加载失败!';else document.body.innerHTML='加载失败';},

◐◐◐◐●☛█▼▲豪仕知识网HT●☛█▼▲◐◐◐◐●☛█▼▲

15 success:function(x){

16 var func=function(){if(callback.over)callback.over();if(e)e.innerHTML=x;else document.write(x);};

◐◐◐◐●☛█▼▲豪仕知识网HT●☛█▼▲◐◐◐◐●☛█▼▲

17 if(r.time){var t=new timer(r.time,func);t.start();}/*延迟显示*/

18 else func();

◐◐◐◐●☛█▼▲豪仕知识网███████豪仕知识http://www.Haoz.net▼▲▼▲▼▲▼▲▼●●●●●●●▼▲▼▲▼▲

19 }});

20 }

21

◐◐◐◐●☛█▼▲豪仕知识网███████豪仕知识http://www.Haoz.net▼▲▼▲▼▲▼▲▼●●●●●●●▼▲▼▲▼▲

22 /*aj为ajax请求对象在global.js中定义

23 * timer为实现一个定时器的代码,在plus.js中有定义 */

函数已经定义完成,我们在需要加载的地方添加代码:

◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲HTTP://WWW.hAoz.net███████████████████████████东方金报网

File:/management.aspx/

◐◐◐◐●☛█▼▲豪仕知识网███████http://www.haOZ.net▼▲▼▲▼▲▼▲▼●●●●●●●▼▲▼▲▼▲

1 var bd=j.$("mainbody"); // mainbody为一个p容器

2 var uri="/do.html?uri=/management.aspx/"+uri;

◐◐◐◐●☛█▼▲豪仕知识网███████http://www.haOZ.net▼▲▼▲▼▲▼▲▼●●●●●●●▼▲▼▲▼▲

3 bd.innerHTML=""; 1 由于do.html会被缓存,所以在do.js中用ajax将返回的html输出到do.html

jquery有一个load()方法,使用方法如:$("#p").load("/index.html");这样就可以将index.html加载到ID为p的容器中,

用iframe也可以实现,但没有上述做法完美,参见discuz那些网站,如登陆弹出一个层,也是载入的一个页面,但我发现状态栏左边出现的是 正在打开about:blank,不知道是不是将iframe的src设为about:blank,然后在编辑iframe呢?但注意了,查看源代码的时候却看不到载入页面的时候是看不到载入的这个页面的源代码,不知道是不是才用了跟jquery一样分析head,然后将载入页面的头部信息添加到主页面的头部,然后用eval()函数执行javascript代码,,求解?

●☛█▼▲豪仕知识网◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲

以下我用了一个页面做为承载载入页面源代码的容器,命名为do.html,传递一个参数uri告诉do.html要载入的页面!

◐◐◐◐●☛█▼▲豪仕知识网███████http://www.haOZ.net▼▲▼▲▼▲▼▲▼●●●●●●●▼▲▼▲▼▲

示例DEMO:http://mi.8866.org:2/management.aspx/ 直接点登陆既可

该页面加载了两个js文件

1

HTTP://WWW.haoz.net◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐豪仕知识网

2

do.html的源代码为:

◐◐◐◐●☛█▼▲豪仕知识网███████http://www.haOZ.net▼▲▼▲▼▲▼▲▼●●●●●●●▼▲▼▲▼▲

载入中...

File:do.js 1 document.write("");

2 document.write("");

◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲HtTp://wWW.haoz.net豪仕知识网●●●●●●●●●●●●●●●●●●●●●●●●●●

3 window.onload=function(){

4 j.plus.loadPage({uri:"/",time:1},{

◐◐◐◐●☛█▼▲豪仕知识网███████豪仕知识网HTtp://www.haoZ.net▼▲▼▲▼▲▼▲▼●●●●●●●▼▲▼▲▼▲

5 start:function(){/*开始加载的回执函数*/},

6 over:function(){/*加载完成的回执函数*/}});

7 } loadPage的定义如下: 01 if(!typeof(window.j))window.j=new js();

◐◐◐◐●☛█▼▲豪仕知识网http://www.haOz.net▼▲▼▲▼▲▼▲▼●●●●●●●▼▲▼▲▼▲

02 j.plus=new plus();

03 function plus(){}

http://www.haoz.net●☛█▼▲◐●☛█▼▲◐◐◐◐●☛█▼▲◐豪仕知识网●☛█▼▲豪仕知识网

04

05 plus.prototype.loadPage=function(r,callback,e,times){

http://www.haoz.net●☛█▼▲◐●☛█▼▲◐◐◐◐●☛█▼▲◐豪仕知识网●☛█▼▲豪仕知识网

06 /*

HTTP://WWW.haoz.net◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐豪仕知识网

07 r 请求; r.time : 等待加载时间(毫秒);

08 callback :回执函数 (callback.start(),callback.over())

09 e.element 页面容器; */

●☛█▼▲豪仕知识网◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲

10 if(!r.uri)alert('page uri parameters not be found!');

http://www.haoz.net●☛█▼▲◐●☛█▼▲◐◐◐◐●☛█▼▲◐豪仕知识网●☛█▼▲豪仕知识网

11 var aj=new ajax();

12 aj.request(r,{

13 start:function(){if(callback.start)callback.start();if(e)e.innerHTML='加载中..';else{document.body.innerHTML='加载中';}},

HTTP://WWW.haoz.net豪仕知识网采集不好玩哦◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐撒旦法师打发斯蒂芬

14 error:function(x){if(e)e.innerHTML='加载失败!';else document.body.innerHTML='加载失败';},

15 success:function(x){

http://www.haoz.net●☛█▼▲◐●☛█▼▲◐◐◐◐●☛█▼▲◐豪仕知识网●☛█▼▲豪仕知识网

16 var func=function(){if(callback.over)callback.over();if(e)e.innerHTML=x;else document.write(x);};

●☛█▼▲豪仕知识网◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲

17 if(r.time){var t=new timer(r.time,func);t.start();}/*延迟显示*/

18 else func();

◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲◐◐◐◐●☛█▼▲HTTP://WWW.hAoz.net███████████████████████████东方金报网

19 }});

20 }

HTTP://WWW.haoz.net豪仕知识网采集不好玩哦◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐撒旦法师打发斯蒂芬

21

22 /*aj为ajax请求对象在global.js中定义

◐◐◐◐●☛█▼▲豪仕知识网HT●☛█▼▲◐◐◐◐●☛█▼▲

23 * timer为实现一个定时器的代码,在plus.js中有定义 */

函数已经定义完成,我们在需要加载的地方添加代码:

File:/management.aspx/

HTTP://WWW.haoz.net◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐◐豪仕知识网

1 var bd=j.$("mainbody"); // mainbody为一个p容器

2 var uri="/do.html?uri=/management.aspx/"+uri;

3 bd.innerHTML=""; 1 由于do.html会被缓存,所以在do.js中用ajax将返回的html输出到do.html

http://www.haoz.net●☛█▼▲◐●☛█▼▲◐◐◐◐●☛█▼▲◐豪仕知识网●☛█▼▲豪仕知识网

利用iframe实现javascript无刷新载入整页的介绍就聊到这里吧,感谢你花时间阅读,更多关于利用iframe实现javascript无刷新载入整页的信息别忘了在本站进行查找哦。豪仕知识网往后会继续推荐利用iframe实现javascript无刷新载入整页相关内容。

相关文章