window.onload在body onload工作时不工作

Luc*_*Ass 2 html javascript

这是我在这里的第一个问题,但我希望我能够提供所有必要的信息.我需要使用window.onload在我的html代码的头部编写一个脚本,并使用type ="text/view"来显示.

当我把这个代码放在体内并使用时

<body onload="loadWelcomePage()">

    function loadWelcomePage() {
        var welcomePageContent = document.getElementById('welcomeview');
        var profilePageContent = document.getElementById('profileview');
        var showPage = document.getElementById('contentSpace');

        showPage.innerHTML = welcomePageContent.innerHTML;

    }
Run Code Online (Sandbox Code Playgroud)

但是,当我将相同的代码复制到js文件时,不会加载相同的函数.我究竟做错了什么.我在下面使用的js文件中发布了替换代码.

window.onload = function() {displayView};

function displayView() {
   var welcomePageContent = document.getElementById('welcomeview');
   var profilePageContent = document.getElementById('profileview');
   var showPage = document.getElementById('contentSpace');

   showPage.innerHTML = welcomePageContent.innerHTML;
} 
Run Code Online (Sandbox Code Playgroud)

我需要使用javascript而不是jQuery来完成任务.

Que*_*tin 7

function() {displayView};
Run Code Online (Sandbox Code Playgroud)

只提一个变量什么都不做.

如果你想调用一个函数,那么你必须调用它(例如with ()).

function() {displayView(); };
Run Code Online (Sandbox Code Playgroud)

您也可以绕过创建一个除了调用另一个函数之外什么都不做的函数:

window.onload = displayView;
Run Code Online (Sandbox Code Playgroud)

(请注意,浏览器将调用事件触发时,你是不是自己称这是在这种情况下,函数,所以()应该被忽略,否则你怎么称呼它立即并指定返回值onload.)