关于函数表达式问题?

来源:10-1 编程挑战

慕粉3988711

2016-10-20 21:27

如本次编程挑战目的是实现点击某li块显现该li块对应的div块而影藏其余2个div块,而实现影藏的div块的js代码核心为2个for循环以及2个函数表达式,第一个表达式为:widnow.onload=function(){//代码}

而第二个表达式为: oLis[i].onclick = function() {//代码};

由于进阶篇并没有讲函数表达式,所以经过百度发现想要使函数运行也得函数调用譬如:

var a=function(){console.log("hello!")};

这样子并不会使得代码运行,但是只要加上:

a();则编译器立马打印hello!

对于 oLis[i].onclick = function() {//代码};只能理解为oLis[i].onclick鼠标点击后会立即触发后边的function代码,所以我们不用oLis[i].onclick(参数)因为参数就是鼠标点击。

但是widnow.onload=function(){//代码}怎么使得function里的代码运行的?这里没有可触发的window.onload(参数)的参数,也没有类似于a()这样的函数调用,请问是怎么运行的?

写回答 关注

2回答

  • 小威_0004
    2016-10-21 17:12:55
    已采纳

    每次刷新加载网页的时候,会自动调用 windows.onload

    慕粉3988...

    谢谢你啊!

    2016-10-21 20:23:07

    共 1 条回复 >

  • 慕粉3988711
    2016-10-21 20:27:12

    我刚刚又去百度了一下window.onload这句词法意味着页面加载完,就去执行;我们提交完代码开始运行,首先碰到widnow.onload=function(){//代码},开始加载页面,页面加载完后立即执行(即window.onload)其实就相当于window.onload();于是就完成了此次的任务。

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468190 学习 · 21891 问题

查看课程

相似问题