Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript动态创建的div隐藏,除非包含document.write()_Javascript_Html - Fatal编程技术网

Javascript动态创建的div隐藏,除非包含document.write()

Javascript动态创建的div隐藏,除非包含document.write(),javascript,html,Javascript,Html,我已经动态创建了一个包含日期和时间的通用标题。目前,它的行为和外观都非常好,但一旦我删除document.write('.'),它就会消失。似乎我需要任何类型的写入才能显示dateDiv,“.”只是一个用来填充空格的随机字符 //write date/time to div var dateDiv = document.createElement('div'); dateDiv.innerHTML = '<p>' + d_names[curr_day] + ', ' + m_name

我已经动态创建了一个包含日期和时间的通用标题。目前,它的行为和外观都非常好,但一旦我删除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);
//将日期/时间写入div
var dateDiv=document.createElement('div');
dateDiv.innerHTML=''+d_名称[当前日期]+','+m_名称[当前月份]+'+curr_日期+','+curr_年+'.+'+curr_小时+':'+curr_分钟+'+a_p+''

''; dateDiv.id='dateTime'; //dateDiv将在附加到正文之前消失,但没有document.write()。需要修复 文件。写('.'); document.body.appendChild(dateDiv);

我还没有找到这个问题的答案,有人看到问题了吗?

因为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);
};
window.onload=function(){
//将日期/时间写入div
var dateDiv=document.createElement('div');
dateDiv.innerHTML=''+d_名称[当前日期]+','+m_名称[当前月份]+'+curr_日期+','+curr_年+'.+'+curr_小时+':'+curr_分钟+'+a_p+''

''; dateDiv.id='dateTime'; document.body.appendChild(dateDiv); };
编辑:
请参见示例

是什么触发此代码运行?页面已完全加载吗?您发布的代码工作正常:。问题一定在其他地方,请提供更多信息。谢谢!我很惭愧我忽略了这么一件简单的事情,但这确实奏效了。我只是将document.body.appendChild(dateDiv)放入onload函数中。如果我有更高的声誉,我会给你一个机会,不客气。但您可以/应该始终接受用户的答案,以确保问题得到解决;)