私は、50msごとに1pxの割合でサイドスクロールするCSS背景画像を持つヘッダーを持っています。しかし、背景画像はユーザーのコンピュータの時間によって変わり、これをどうやってやっていくのか分かりません。私はサイドスクロール自体のコードを書いたが、それ以外は何も書かなかった。サイドスクロール画像ですが、画像が変更されます
function styleSwitcher() {
var currentTime = new Date().getHours();
if (0 <= currentTime&¤tTime < 6) {
document.write("<link rel='stylesheet' href='css/night.css' type='text/css'>");
}
if (6 <= currentTime&¤tTime < 18) {
document.write("<link rel='stylesheet' href='css/day.css' type='text/css'>");
}
if (18 <= currentTime&¤tTime <= 24) {
document.write("<link rel='stylesheet' href='css/night.css' type='text/css'>");
}
}
styleSwitcher();
CSS(唯一の違い:
setInterval("mvheader()",50);
function mvheader() {
window.cssXPos=window.cssXPos+1;
if (window.cssXPos>=window.cssMaxWidth) {
window.cssXPos=0;
}
toMove=document.getElementById("header");
toMove.style.backgroundPosition=window.cssXPos+"px 0px";
}
JavaScriptが時間に応じて、異なるCSSファイルを使用するために使用:
のJavascriptは、サイドスクロールする(何もない)を使用しました。
#header {
background-image:url(../img/day/tile.png);
background-repeat:repeat-x;
position:absolute;
height:100px;
width:100%;
top:0;
left:0;
z-index:9;
}
問題は何ですか?スクロールが機能していませんか?それとも、それは期待どおりに動作するのですか? 'styleSwitcher()'関数をどこで呼び出しますか?サイドの質問:ウィンドウオブジェクトにcssXPosをキャッシュする特別な理由はありますか? – WTK
スクロールが機能しません。 'styleSwitcher()'関数は、関数が入っているのと同じJavaScriptファイルから実行されます。 – Mythrillic
@WTK副質問については、パフォーマンスが向上すると思っていました。 – Mythrillic