从外部 js 文件返回样式表

Return stylesheet from external js file

本文关键字:样式 返回 文件 js 从外部      更新时间:2023-09-26

我正在使用下面的JavaScript来决定加载哪个样式表(如果是十二月,我的圣诞节样式会加载,否则会加载我的默认样式)。这导致了 XHTML 验证的问题,我怀疑最好的解决方案是从外部文件加载 js,但我对此相当陌生,并且终生无法让它工作。

如果可能的话,我希望使用相同的代码,但在单独的文件中,以达到与直接在HTML中执行相同的效果。如果有人能解释如何做到这一点,将不胜感激!

<head>
<script type="text/javascript">
    var i = new Date();
    var m = i.getMonth();
    if (m==11) {
        document.write('<link rel="stylesheet" type="text/css" href="mystyle-christmas.css" />');
    } else {
        document.write('<link rel="stylesheet" type="text/css" href="mystyle-default.css" />');
    }
</script>
</head>

您可能希望使用 DOM 函数创建一个 LINK 节点并将其添加到标头中。

var l = document.createElement('LINK');
l.setAttribute('rel','stylesheet');
l.setAttribute('href','mystyle-christmas.css');
l.type = 'text/css';
document.getElementsByTagName('HEAD')[0].appendChild(l);
<link id="stylesheet" rel="stylesheet" type="text/css" href="mystyle-default.css" />
var i = new Date();
var m = i.getMonth();
if (m>=11) {
document.getElementById('stylesheet').href = 'mystyle-christmas.css';
} 
默认样式表不需要

加载javascript,您只需在需要的月份替换样式表。