|
因?yàn)殚_(kāi)始不懂Jquery,一直想用jquery.load的方法載入新的頁(yè)面,以實(shí)現(xiàn)局部刷新,結(jié)果發(fā)現(xiàn)載入進(jìn)來(lái)的頁(yè)面與原來(lái)單獨(dú)的頁(yè)面不一樣,樣式?jīng)]了,后來(lái)在網(wǎng)上查了一下,發(fā)現(xiàn)了解決辦法,這是別人的回答:
是這樣的,如果不過(guò)濾掉一些內(nèi)容的話,直接加載,會(huì)使頁(yè)面混亂的,比如新的頁(yè)面也存在<body>標(biāo)簽,加載進(jìn)來(lái)后,一個(gè)頁(yè)面就會(huì)存在兩個(gè)<body>標(biāo)簽是不規(guī)范的的HTML。這個(gè)是在jquery.load()函數(shù)中規(guī)定的。一般加載進(jìn)來(lái)的頁(yè)面需要自己根據(jù)加載的內(nèi)容的元素重新定義CSS樣式和添加js事件的。比如:
原頁(yè)面A.html:
<html><head><title></title></head><body><div id="container"></div></body></html>被load的頁(yè)面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>
在原頁(yè)面A.html中加載調(diào)用的jquery.load(),然后再在原頁(yè)面對(duì) page-li 的樣式重新定義下就可以了:
添加了load(),css的原頁(yè)面:
<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>
希望對(duì)你有幫助
JavaScript技術(shù):用Jquery.load載入頁(yè)面后樣式?jīng)]了頁(yè)面混亂的解決方法,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。