我正在使用CMS,它阻止我们编辑头部。我需要在标记之后立即向网站添加CSS样式表。有没有办法用JS做到这一点,在这里我可以在页面底部添加一个脚本(我可以在标记之前添加脚本),然后将样式表注入(inject)到头部?
最佳答案
更新:根据specs,体内不允许link
元素。但是,大多数浏览器仍然可以很好地渲染它。因此,要回答评论中的问题,实际上必须在页面的link
中添加head
而不是body
。
function addCss(fileName) {
var head = document.head;
var link = document.createElement("link");
link.type = "text/css";
link.rel = "stylesheet";
link.href = fileName;
head.appendChild(link);
}
addCss('{my-url}');
或使用jQuery轻松一点
function addCss(fileName) {
var link = $("<link />",{
rel: "stylesheet",
type: "text/css",
href: fileName
})
$('head').append(link);
}
addCss("{my-url}");
原始答案:
您不必将其添加到头部,只需将其添加到body标签的末尾即可。
$('body').append('<link rel="stylesheet" type="text/css" href="{url}">')
正如Juan Mendes所说,您可以将样式表插入头部
$('head').append('<link rel="stylesheet" type="text/css" href="{url}">')
和没有jQuery的情况相同(请参见上面的代码)
关于javascript - 使用主体中的javascript将样式表添加到Head,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11833759/