我正在使用下面的JavaScript来决定加载哪个样式表(如果是12月,我的圣诞节样式会加载,否则会加载我的默认样式)。这导致了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>
答案 0 :(得分:3)
您可能希望使用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);
答案 1 :(得分:0)
<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加载,只需在需要的月份内替换样式表。