2016-11-11 10 views
1

したがって、基本的に時間を一貫して更新するスクリプトを使用して、秒/分/時などの時間が表示されます。<script>は、ページを開くときに常に読み込まれるとは限りません。

何らかの理由で、ページを読み込むときに動作することがありますが、ほとんどの場合は動作しません。これは非常に珍しいことで、誰かが入力を持っているのだろうかと思っています。

スタイリングの目的で、emタグは本当にh1に留まる必要があります。ここで

は私のコードです:すべての

<head> 

<link rel="stylesheet" type="text/css" href="styling.css"> 
<h1>The Trade Shack<em id="demo"></em></h1> 
<title>Homepage</title> 

<script> 
    function getCurrentDate(){ 
var fullDate = new Date(); 
var day = fullDate.getDay(); 
var stringDays = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; 
var month = fullDate.getMonth(); 
var stringMonth = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; 
var numDay = fullDate.getDate(); 
var year = fullDate.getFullYear(); 
var hour = fullDate.getHours(); 
var minute = fullDate.getMinutes(); 
var second = fullDate.getSeconds(); 

document.getElementById("demo").innerHTML = stringDays[day] + ", " + stringMonth[month] + " " + numDay + ", " + year + ", " + hour + ":" + minute + ":" + second; 

} 

setInterval(getCurrentDate,1000); 
</script> 

    </head> 
+0

window.onload..Itでコードをラップ – Geeky

+2

を動作するはずだけwindow.onload内のsetIntervalを呼び出す...それが動作する完全 – Geeky

+3

は、先頭フラグメントに.. H1を使用してはいけません。先頭の断片には、リンク、スクリプト、メタ、またはタイトルなどの要素のみを含める必要があります。 bodyタグには他のすべてを使用する必要があります。たとえば、 –

答えて

1

setIntervalwindow.onloadにラップします。さらに

... 

window.onload=function(){ 
    setInterval(getCurrentDate,1000); 
}; 

、後でHTMLをあなたが持つかもしれないいくつかの問題を解決<body><head>からあなた<h1>を移動します。

1

まずあなたがH1要素(とそのすべての内部)を削除し、ドキュメントのbodyタグの上にそれを置く必要があり、その後、window.onloadイベントを使用し、それはどこですあなたはあなたが使用するため、ここで私はそれが動作を期待window.onload http://www.w3schools.com/jsref/event_onload.asp

を確認することができ、コードsetInterval(getCurrentDate,1000);

のこのPICEを呼び出すするつもりだ:)

1

'demo'が見つからない場合でも機能が動作することを確認してください。そうしないと、ブロッキングエラーが発生し、それ以上の実行を妨げる可能性があります。頭よりも身体の内側に<h1>を入れてください。

<head> 
<link rel="stylesheet" type="text/css" href="styling.css"/> 
<title>Homepage</title> 
<script> 
function getCurrentDate() { 
    var demo = document.getElementById("demo"); 
    if (!demo) {return;} 
    var fullDate = new Date(); 
    var day = fullDate.getDay(); 
    var stringDays = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; 
    var month = fullDate.getMonth(); 
    var stringMonth = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; 
    var numDay = fullDate.getDate(); 
    var year = fullDate.getFullYear(); 
    var hour = fullDate.getHours(); 
    var minute = fullDate.getMinutes(); 
    var second = fullDate.getSeconds(); 
    demo.innerHTML = stringDays[day] + ", " + stringMonth[month] + " " + numDay + ", " + year + ", " + hour + ":" + minute + ":" + second; 
} 
setInterval(getCurrentDate, 1000); 
</script> 
</head> 
<body> 
<h1>The Trade Shack<em id="demo"></em></h1> 
<!--More HTML here--> 
</body> 
関連する問題