首页 > 语言 > JavaScript > 正文

用Jquery.load载入页面后样式没了页面混乱的解决方法

2024-05-06 16:09:57
字体:
来源:转载
供稿:网友

一直想用jquery.load的方法载入新的页面,以实现局部刷新,结果发现样式没了,后来发现了解决方法,如果不过滤掉一些内容的话,直接加载,会使页面混乱的

因为开始不懂Jquery,一直想用jquery.load的方法载入新的页面,以实现局部刷新,结果发现载入进来的页面与原来单独的页面不一样,样式没了,后来在网上查了一下,发现了解决办法,这是别人的回答:

是这样的,如果不过滤掉一些内容的话,直接加载,会使页面混乱的,比如新的页面也存在

标签,加载进来后,一个页面就会存在两个标签是不规范的的HTML。这个是在jquery.load()函数中规定的。一般加载进来的页面需要自己根据加载的内容的元素重新定义CSS样式和添加js事件的。比如:

原页面A.html:

 


  1. <html> 
  2. <head><title></title></head> 
  3. <body> 
  4. <div id="container"></div> 
  5. </body></html> 
  6. 被load的页面B.html: 
  7. <html> 
  8. <head><title></title></head> 
  9. <style>.page-li {font-size:12px;color:blue}</style> 
  10. <body> 
  11. <div id="page"
  12. <ol class="page-li"
  13. <li>234123</li><li>341234</li><li>41234</li><li>412de34</li> 
  14. </ol> 
  15. </div> 
  16. </body></html> 

 

在原页面A.html中加载调用的jquery.load(),然后再在原页面对 page-li 的样式重新定义下就可以了:

添加了load(),css的原页面:

 


  1. <html> 
  2. <head><title></title></head> 
  3. <style>.page-li {font-size:12px;color:green}</style> 
  4. <body> 
  5. <div id="container"></div> 
  6. <script type="text/javascript"
  7. $(function(){ 
  8. $("#container").load("B.html #page",null,function(){alert("加载成功")}); 
  9. }); 
  10. </script> 
  11. </body></html> 

 

希望对你有帮助


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选