0

日付と時刻を含むユニバーサルヘッダーを動的に作成しました。現在は動作し、完全に正常に見えますが、document.write('。')を削除するとすぐに消えます。dateDivが表示されるようにするには、そこに何らかの書き込みが必要なようです。スペースを埋めるために使用される単なるランダムな文字です。

//write date/time to div
var dateDiv = document.createElement('div');
dateDiv.innerHTML = '<p>' + d_names[curr_day] + ', ' + m_names[curr_month] + ' ' + curr_date + ',     ' + curr_year + ' | ' + '<strong>' + curr_hour + ':' + curr_min + ' ' + a_p + '</strong>' + '</p>';
dateDiv.id = 'dateTime';

//dateDiv disappears without a document.write() before being appended to the body. need to fix
document.write('.');

document.body.appendChild(dateDiv);

私はまだこれに対する答えを見つけることができませんでした、誰かが問題を見ますか?

4

1 に答える 1

2

loganfsmythは、ドキュメントが完全にロードされていないときにコードが実行される可能性を示唆しているためです。試す:

window.onload = function(){
    //write date/time to div
    var dateDiv = document.createElement('div');
    dateDiv.innerHTML = '<p>' + d_names[curr_day] + ', ' + m_names[curr_month] + ' ' + curr_date + ',     ' + curr_year + ' | ' + '<strong>' + curr_hour + ':' + curr_min + ' ' + a_p + '</strong>' + '</p>';
    dateDiv.id = 'dateTime';
    document.body.appendChild(dateDiv);
};

編集:たとえばhttp://javascript.about.com/library/blonload.htmを参照してください

于 2012-12-19T17:21:25.867 に答える