Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.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中调用函数loadText和loadText()有什么区别?_Javascript_Html_Dom - Fatal编程技术网

在Javascript中调用函数loadText和loadText()有什么区别?

在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

我有一个简单的JS函数,可以将文本行加载到无序列表中

Javascript

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;