我想使用函数表达式来显示页面加载的日期,然后使用自调用函数来更改日期字体颜色。
我以为我走的是正确的道路,但我有两个问题。第一个是,我的代码不会改变文本的颜色。第二个,是我从第一个函数说出dateDisplay()的控制台错误;没有定义。但是如果我尝试从调用中删除函数名,只需使用();运行该功能。我收到了错误
'-F/...'
我曾试图改变一些事情,我最终会遇到控制台错误。通常我要么得到未定义的函数,要么得到如上所述的错误。
HTML
document.getElementById("dateDisplay").innerHTML = d; is null
的javascript
<div>
<h2><p id="dateDisplay"></p></h2>
<p>does this work</p>
</div>
我很失落,不明白最新情况。
答案 0 :(得分:2)
请改为:
AttributeError: function 'add' not found
甚至更好:
window.onload = function(){
var d = new Date();
document.getElementById("dateDisplay").innerHTML = d;
document.getElementById("dateDisplay").style.color = "red";
};
或者您也可以这样做:
window.addEventListener("load", function(){
var d = new Date();
document.getElementById("dateDisplay").innerHTML = d;
document.getElementById("dateDisplay").style.color = "red";
});
答案 1 :(得分:0)
你在做功课需要你以某种方式做吗?
无论如何,我想我会给出一些帮助。首先,如果某些东西不起作用,我不太了解它(仍在学习它)我喜欢把它分解成较小的部分并进行测试,直到我得到更好的理解。
例如,尝试使用console.log
中的一个函数,直到它开始工作:
var d = new Date();
window.onload = function() {
console.log('window loaded!');
}
此功能在加载时应该可以正常工作,如果没有则会出现其他问题。一旦你开始工作,然后加入document.getElem...
并处理下一个函数等。
编辑,显示我的快速测试:
HTML:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div id="header"></div>
</body>
<script src="test.js"></script>
</html>
的javascript:
var d = new Date();
window.onload = function() {
console.log('window loaded');
document.getElementById('header').innerHTML = d;
}
(function() {
console.log('invoked');
document.getElementById('header').style.color = 'red';
}());
工作得很好。