一直想用jquery.load的方法載入新的頁面,以實(shí)現(xiàn)局部刷新,結(jié)果發(fā)現(xiàn)樣式?jīng)]了,后來發(fā)現(xiàn)了解決方法,如果不過濾掉一些內(nèi)容的話,直接加載,會使頁面混亂的
因?yàn)殚_始不懂Jquery,一直想用jquery.load的方法載入新的頁面,以實(shí)現(xiàn)局部刷新,結(jié)果發(fā)現(xiàn)載入進(jìn)來的頁面與原來單獨(dú)的頁面不一樣,樣式?jīng)]了,后來在網(wǎng)上查了一下,發(fā)現(xiàn)了解決辦法,這是別人的回答:
是這樣的,如果不過濾掉一些內(nèi)容的話,直接加載,會使頁面混亂的,比如新的頁面也存在
標(biāo)簽,加載進(jìn)來后,一個(gè)頁面就會存在兩個(gè)標(biāo)簽是不規(guī)范的的HTML。這個(gè)是在jquery.load()函數(shù)中規(guī)定的。一般加載進(jìn)來的頁面需要自己根據(jù)加載的內(nèi)容的元素重新定義CSS樣式和添加js事件的。比如:原頁面A.html:
- <html>
- <head><title></title></head>
- <body>
- <div id="container"></div>
- </body></html>
- 被load的頁面B.html:
- <html>
- <head><title></title></head>
- <style>.page-li {font-size:12px;color:blue}</style>
- <body>
- <div id="page">
- <ol class="page-li">
- <li>234123</li><li>341234</li><li>41234</li><li>412de34</li>
- </ol>
- </div>
- </body></html>
|
在原頁面A.html中加載調(diào)用的jquery.load(),然后再在原頁面對 page-li 的樣式重新定義下就可以了:
添加了load(),css的原頁面:
- <html>
- <head><title></title></head>
- <style>.page-li {font-size:12px;color:green}</style>
- <body>
- <div id="container"></div>
- <script type="text/javascript">
- $(function(){
- $("#container").load("B.html #page",null,function(){alert("加載成功")});
- });
- </script>
- </body></html>
|
希望對你有幫助
新聞熱點(diǎn)
疑難解答
圖片精選