在Javascript中调用函数loadText和loadText()有什么区别?
我有一个简单的JS函数,可以将文本行加载到无序列表中 Javascript在Javascript中调用函数loadText和loadText()有什么区别?,javascript,html,dom,Javascript,Html,Dom,我有一个简单的JS函数,可以将文本行加载到无序列表中 Javascript function loadText() { document.getElementById("text1").innerHTML = "Text1"; document.getElementById("text2").innerHTML = "Text2"; document.getElementById("text3").innerHTML = "Text3"; } window.onload
function loadText() {
document.getElementById("text1").innerHTML = "Text1";
document.getElementById("text2").innerHTML = "Text2";
document.getElementById("text3").innerHTML = "Text3";
}
window.onload = loadText;
HTML
这实际上在浏览器(Chrome)中起作用,但当我使用window.onload=loadText()时
而不是window.onload=loadText代码>。我得到一个错误:
未捕获的TypeError:无法将属性“innerHTML”设置为null
我认为这是因为DOM没有被读取,所以我尝试了ondomready,但也遇到了同样的问题。但是更改window.onload=loadText()代码>返回到window.onload=loadText代码>再次工作
我觉得有点奇怪,这会造成不同。我是不是遗漏了什么
window.onload = loadText();
这将立即执行loadText并将其返回值存储在window.onload中
window.onload = loadText;
这使window.onload引用loadText函数。调用window.onload()现在与调用loadText()相同
告诉浏览器在加载文档时执行loadText
。这意味着document.getElementById
将在loadText
中可用(并正常工作)
window.onload=loadText()
立即执行loadText
,并将返回值(undefined
)分配给窗口。onload
。因此,赋值是无用的,函数将不起作用
你想要window.onload=loadText
在这里,我不知道你为什么要尝试window.onload=loadText()
window.onload=loadText()当浏览器读取该行时,代码>将立即执行
window.onload=loadText
将分配值loadText并让浏览器加载完整的dom非常感谢..这是一个输入错误,但我只是想澄清它是如何工作的…所以本质上(未定义的)返回值把它搞砸了…@mobberry不,函数的直接调用把它搞砸了。只需在onload
之前调用函数即可。
window.onload = loadText;