2015-09-16 54 views
0

我的指令是包含通过函数 表达式定义的函数,该函数在页面打开时在 页面顶部的h2中显示当前日期和时间。向h2添加一个id =“dateDisplay”。包括 一个自调用函数,用于更改第一个函数打印的日期文本 的颜色。使用javascript显示日期

林有点困惑如何完成这一点。我试图做一个函数表达式来显示日期,但我什么都没有显示,也没有错误。我试图做一个正文onload来调用该函数,但这会导致未定义函数的控制台错误。

HTML

<div> 
    <h2 id="dateDisplay"></h2> 
</div> 

的Javascript

var d = new Date(); 
var x = function dateDisplay(){ 
    document.getElementById("dateDisplay").value = d; 
} 

我真的被指令混淆。我想要做什么才能达到这个目的。

编辑:我有一个错误,我的链接到我的js文件。现在的问题是我得到控制台错误document.getElementById ...是空天气我使用innerHTML或值或.innerText

回答

2

您需要调用您的功能,并使用.innerText而不是.value。注意value仅适用于input元素。

var d = new Date(); 
var x = function dateDisplay(){ 
    document.getElementById("dateDisplay").innerText = d; 
} 

x(); 
+0

为什么这个工作在jsfiddle,但不是当我上传到我的服务器?或者在komodo IDE中做一个预览视图? – kronis72

+0

@ kronis72确保在加载'dateDisplay'元素后运行JavaScript。 –

+0

我与我的js文件的链接有问题,但是您的代码示例中,我收到一个控制台错误,指出document.getelementbyid为空 – kronis72

1

您必须使用此代码:
的Javascript

var d = new Date(); 
var x = function dateDisplay(){ 
document.getElementById("dateDisplay").innerHTML = d; 
} 
x(); 

“显示的数据” 在HTML中,(在大多数情况下),你会设置一个innerHTML property.after的价值这个变化你必须调用x()函数。
和你在使用dateDisplay元素后加载

+0

虽然这工作在jsfiddle这不起作用,当我在我的服务器上。 – kronis72

1

您还可以使用.innerHTML方法,像这样:

var d = new Date(); 
var x = function dateDisplay(){ 
    document.getElementById("dateDisplay").innerHTML = d; 
} 
x(); 

你也忘了更直接调用函数x

0

通话功能宁愿不是分配给变量函数

var d = new Date(); 
dateDisplay(); 
function dateDisplay(){ 
    document.getElementById("dateDisplay").innerHTML = d; 
}