2022年4月10日 星期日

JavaScript : 將網頁中的 style 物件變字串

2022年4月10日 星期日

 最近以 HTML5 寫了一個動態網頁語法產生器,產出的內容其實會和產生器本身用到很多相同的樣式表,和 JavaScript 程式碼。一開始,沒什麼規畫,邊寫邊加;後來發現,改一個功能,兩個區塊都要改,甚至改到都不同步了。

靜下心來,理了理思緒,何不將共用的部份,直接引用就好。

JavaScript 的 function 可以直接利用 toString() 來變成字串,例如 test 函數可以用這樣的語法取得程式碼字串:

test.toString()

如果我幫網頁中的 <style> 加上了 id,讓它變成 <style id="myStyle">,這樣子就可以利用「document.getElementById("myStyle")」取得 style 物件。

不過,如果想用 toString() 來將它變成字串,只會得到像這樣的內容:

object HTMLStyleElement

哈~沒關係,style 的內容長得像 XML 的語法,那就用 XML 的方法轉轉換吧:

(new XMLSerializer).serializeToString(document.getElementById("myStyle"))

幸好之前在寫 HTML5 筆順練習時,常使用這個函數。試了一下,果然可以將 style 物件轉為字串。



沒有留言:

張貼留言

 
雄::gsyan © 2009. Design by Pocket