Re: [問題] 如何動態載入/替換 JavaScript 以及 CSS ?

看板Web_Design作者 (冒牌費大公)時間17年前 (2006/12/21 15:56), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
動態加入script的方法大致如下: var dochead = document.getElementsByTagName("HEAD")[0]; var jsobj = document.createElement("script"); jsobj.src = "plug01.js"; dochead.appendChild(jsobj); 動態載入的速度,可能要實測一下比較保險。 動態修改style sheet比較麻煩 如果是用<style></style>可以動態修改,用<link...>或是@import只能改url 取得文件中的stylesheet list: document.styleSheets[index] 或是 document.styleSheets.item(index) 例如:var stylesheet1 = document.styleSheets[0]; 取得stylesheet中的rule: stylesheet1.rules[index] 或是 stylesheet1.rules.item(index) 或是 stylesheet1.rules.item(selectorName) (如果是firefox,把rules改成cssRules) 例如:var rule1 = stylesheet1.rules[0]; 修改rule,可以透過rule的style物件: 例如:rule1.style.textAlign = "center"; 或是直接修改style.cssText: 例如:rule1.style.cssText = "text-align: center"; 如果使用<link....>或是@import的style sheet的話,微軟有提供一個範例: if (stylesheet1.href != null) { stylesheet1.href = "other.css"; } -- Sapere Aude! 這就是啟蒙運動的口號! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.128.137.98

12/21 18:25, , 1F
非常感謝回答!
12/21 18:25, 1F
文章代碼(AID): #15YZv1TL (Web_Design)
文章代碼(AID): #15YZv1TL (Web_Design)