JavaScriptを使用して日付でCSSを読み込む

私は日付(シーズン)に応じて別のCSSファイルをロードするために探しています。

私はここからstackoverflowで画像のスクリプトを修正しようとしましたが、うまくいきませんでした。

誰かが間違ってどこに私を指摘することができますか?

<link href="/css_season/default.css" rel="stylesheet" type="text/css" onload="logo(this)">
function logo(link) {
  var d = new Date();
  var Today = d.getDate();
  var Month = d.getMonth();
  var src;
  if (Month === 4 && (Today >= 1 && Today <= 30)) {
    src = "/css_season/easter.css";
  } else if (Month === 7 && (Today >= 1 && Today <= 31)) {
    src = "/css_season/vacation.css";
  } else if ((Month === 8 && Today >= 30) || (Month === 0 && Today <= 2)) {
    src = "/css_season/vacation.css";
  } else if (Month === 12 && (Today >= 15 && Today <= 31)) {
    src = "/css_season/holidays.css";
  } 
  link.href=href;
}
0
nl ru de
追加された 著者 rene,

2 答え

Your assignment link.href=href won't work because href isn't defined. Also, I would put the logo function in <body onload="logo();"> and give your link tag an id attribute.

これはあなたのために働くはずです:

<html>
<head>
<link id="cssId" href="/css_season/default.css" rel="stylesheet" type="text/css"/>
</head>
<body onload="logo();">
 <!-- body content here -->
</body>

function logo() {
  var d = new Date();
  var Today = d.getDate();
  var Month = d.getMonth();
  var src;
  if (Month === 4 && (Today >= 1 && Today <= 30))
    src = "/css_season/easter.css"; 
  else if (Month === 7 && (Today >= 1 && Today <= 31))
    src = "/css_season/vacation.css";
  else if ((Month === 8 && Today >= 30) || (Month === 0 && Today <= 2))
    src = "/css_season/vacation.css";
  else if (Month === 12 && (Today >= 15 && Today <= 31))
    src = "/css_season/holidays.css";

  document.getElementById('cssId').href=src;
}
1
追加された
link ではなく onloadbody に配置するもう1つの引数は、
追加された 著者 Mattias Buelens,
Javascriptでこの <script></script> を実行します。
追加された 著者 fbynite,
すばやく正確な回答をいただきありがとうございます。私はチェックアウトして対応します。
追加された 著者 EncountersM,
ちょうど確かに、おそらく<script type = "text/javascript">と</script>をjavascriptの周りに追加できますか?
追加された 著者 EncountersM,
スクリプトを試しましたが、エラーがあるようですが、何も起こりません。ページ上の他のjqueryと競合している可能性がありますか?競合しないようにいくつかのjqueryをロードする構造体は何ですか?
追加された 著者 EncountersM,

js関数の最後に間違った割り当てがあります。
link.href = href;link.href = src;

乾杯

1
追加された
JavaScript - 日本のコミュニティ
JavaScript - 日本のコミュニティ
2 参加者の

日本人コミュニティのjavascript