無刷新更換頁面樣式

本文只是實現無刷新更改頁面樣式的一個例子,具體現實中如有問題,可以查詢MSDN獲取幫助.

要改成頁面樣式,第一步理解樣式文件的加載原理,即新加載在後面的同名樣式將自動覆蓋原來的同名樣式,比如說

body{font:size:10px;backgroup:url(../images/aa.img)repeat top center}這個樣式的作用是給背景加上一個圖片,圖片平鋪,然而當頁面中在這之後加上一個樣式body{backgroup-reapt:noreapt;}這樣雖然你的頁面中有兩個同名的樣式,但對背景圖片的重複會變成不自動平鋪了。

要設置成JS無刷新更改頁面樣式,可以通過增加一個樣式文件(跟原頁面的樣式結構一樣,具體內容不一樣),來更改原來頁面的樣式,代碼如下:

var links=document.CreateElements("link");

link.type="text/style";

link.href="other.css";

document.getElementsByTagName("head")[0].AppenChild(link);

這樣就可以了。

另一種方法:就是在更改頁面中某一部分的樣式時,直接通過document.CreateElement("Style")元素來實現。

注意:使用document.CreateElement("Style")時,IE中通過StyleSheet.Text來實現CSS內容的書寫,FireFox等瀏覽器通過增加一個TextNode,然後將樣式給其InnerHTML來實現。

發佈了39 篇原創文章 · 獲贊 12 · 訪問量 20萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章