我有一个HTML格式的页面,我需要替换标记内的内容
<style type="text/css">
</style>
注入托管在同一域中的另一个 .css 文件的内容。
知道如何在javascript中做到这一点吗?
<html>
<head>
<style type="text/css">
h1 {color:red;}
p {color:blue;}
</style>
</head>
<body>
<h1>A heading</h1>
<p>A paragraph.</p>
</body>
</html>
答案 0 :(得分:4)
为样式标记添加id属性。使用此挂钩可以使用Javascript更改样式标记的内容。
<强> HTML 强>
<style id="myStyle" type="text/css">
h1 {color:red;}
p {color:blue;}
</style>
<h1>Something</h1>
<强>的Javascript 强>
var elem = document.getElementById("myStyle");
elem.innerHTML = "h1{color:blue;}";
答案 1 :(得分:2)
如果您只想添加这些样式,则无需将内容注入style
元素,只需将其他文件链接为样式表:
var link = document.createElement('link');
link.rel = "stylesheet";
link.href = "/path/to/the/file.css";
document.getElementsByTagName('style')[0].parentNode.appendChild(link);
这会将相关的样式“注入”到文档中。