`
akon405
  • 浏览: 45268 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

关于onload调用多个函数的认识

    博客分类:
  • js
阅读更多

首先说一下onload的一个特点:只能有一个onload执行。这就要求我们不能通过onload="function()"来调用多个函数。

这里通过查找到的资料,有这种方式:

<script>
	function t(){
		alert("t")
	}
	function b(){
		alert("b")
	}
	function c(){
		alert("c")
	}
	function addLoadEvent(func) {
		var oldonload = window.onload;

		if (typeof window.onload != 'function') {
			window.onload = func;
		} else {
			window.onload = function() {
			oldonload();
			alert(oldonload);//这是添加的测试代码
			func();
			}
		}
	}
addLoadEvent(t);
addLoadEvent(b);
addLoadEvent(c);
</script>	

 这里的alert(oldonload)详细记录了函数内部发生的变化:

 addLoadEvent(t)执行后会包含t()函数,addLoadEvent(b)会包含t(),b()函数,addLoadEvent(c)却包含了      t(),b(),c()三个函数。

但是到了最后,只有addLoadEvent(c)才可以通过window.onload产生执行的函数效果。

分享到:
评论

相关推荐

    实战-C++调用Java函数

    C++程序会通过JNI接口调用这个JAR包中的函数。 2. `FunCall_C2Java_Caller` - 这很可能是C++的源代码文件或编译后的可执行文件,它实现了调用Java函数的逻辑。 3. `FunCall_C2Java_Callee` - 这可能是Java源代码文件...

    把多个JavaScript函数绑定到onload事件处理函数上的方法

    然而,如果试图将多个函数绑定到同一个`onload`事件处理函数,会遇到问题,因为每个事件处理函数只能关联一个函数。 例如,如果我们有`firstFunction()`和`secondFunction()`两个函数,我们可能会尝试像下面这样...

    JNI_OnLoad动态注册的例子

    4. **示例代码**:在`HelloJni`这个例子中,我们可能有一个名为`HelloJni`的Java类,它声明了一个或多个本地方法。在对应的C/C++代码中,`JNI_OnLoad`会被这样实现: ```c++ JNIEXPORT jint JNICALL JNI_OnLoad...

    页面载入结束自动调用js函数示例

    7. 注意事项:当页面中有多个JavaScript文件时,如果每一个文件中都使用了window.onload事件来绑定不同的函数,后面的函数会覆盖前面的函数,最终只会执行最后一个绑定的函数。为了避免这种情况,可以将window....

    javscript调用iframe框架页面中函数的方法_.docx

    理解并熟练掌握这些方法对于进行跨IFrame通信至关重要,特别是在开发单页面应用(SPA)或者需要多个独立页面组件交互的场景中。同时,确保在调用函数之前,IFrame中的内容已完全加载,以防止因内容未加载完成而引发...

    addonload:添加多个[removed]函数的简单函数

    这里的"添加多个[removed]函数"暗示了一个高效的方法,通过单一的调用来同时注册或引入多个函数,提高了代码的可读性和维护性。 在JavaScript中,有几种常见的加载或管理函数的方式: 1. **立即执行函数表达式 ...

    window.addEventListener来解决让一个js事件执行多个函数

    当需要一个事件触发时执行多个函数,单纯地使用`window.onload`或元素的`onclick`等事件处理方式可能会遇到问题,特别是在需要同时处理多个事件处理器时。这时,`window.attachEvent`和`window.addEventListener`就...

    一个Js文件函数中调用另一个Js文件函数的方法演示

    在JavaScript编程中,有时我们需要在一个JS文件中的函数调用另一个JS文件中的函数,尤其是在大型项目中,为了代码的模块化和可维护性,文件分隔是常见的做法。然而,直接在HTML中通过`&lt;script&gt;`标签引入的JS文件通常...

    微信小程序防止多次点击跳转(函数节流)

    在代码实现中,我们首先定义了一个throttle函数,这个函数接受一个函数fn和一个时间间隔gapTime作为参数。函数throttle会返回一个新的函数,当这个新函数被调用时,如果在时间间隔内已经被调用过一次,那么新的调用...

    Javscript调用iframe框架页面中函数的方法__1.docx

    iframe(Inline Frame)是一种HTML元素,用于在网页中嵌入另一个网页,它可以加载不同的源文件,使得在一个页面中可以展示多个独立的内容区域。通过JavaScript,我们可以对这些iframe中的内容进行交互,包括调用其中...

    window.onload

    - 如果已经存在,则创建一个新的函数,在该函数内部先调用原先的 `window.onload`,再调用传入的 `func` 函数。 - 这种设计可以确保多次调用 `addLoadEvent` 时,所有的回调函数都能按照顺序正确执行。 ##### 2.3...

    iframe子父页面调用js函数示例

    在网页开发中,`iframe`(Inline Frame)是一种嵌入其他HTML文档的元素,它可以在一个页面中展示多个独立的内容。在实际项目中,我们经常需要实现`iframe`子页面与父页面之间的交互,比如调用彼此的JavaScript函数。...

    JavaScript装饰器函数Decorator实例详解.docx

    这个例子展示了如何使用装饰器来添加多个`onload`事件处理函数,而不会覆盖已有的处理函数。`addLoadEvent`函数接收一个函数`fn`作为参数,然后将其添加到`window.onload`事件中。这样,每次页面加载时,所有注册的...

    js [removed] 加载多个函数和追加函数详解

    第一种方法是通过将window.onload的赋值为一个匿名函数,然后在这个匿名函数内部依次调用多个函数。这种方法虽然可以解决问题,但代码的可读性和可维护性并不理想。第二种方法则是定义一个专门的函数,用来管理...

    js [removed] 加载多个函数的方法

    这样,我们就能够在一个`window.onload`事件中调用多个函数了。尽管这种方式在功能上是可行的,但若每次需要绑定新的函数时都必须修改这个匿名函数内部的代码,这将使得代码的可维护性降低。 为了解决这个问题,...

    javascript封装addLoadEvent实现页面同时加载执行多个函数的方法

    为了解决这个问题,我们可以采用一种叫做"函数封装"的技术,例如通过创建名为`addLoadEvent`的函数来实现多个函数的并行执行。下面我们将详细讨论这个方法。 首先,`addLoadEvent`函数接收一个参数`func`,它代表要...

    小程序生命周期函数测试

    当用户从其他页面返回或小程序启动时,这个函数会被执行,适合在此时恢复页面的状态。 - `onReady()`: 页面布局完成并渲染完毕时调用。如果需要在页面完全展示后执行某些操作,如设置样式或添加事件监听,这里是一...

    安卓逆向学习笔记之VMP保护的函数的快速逆向分析方法实践篇.docx

    当函数具有多个参数列表时,需要特别注意正确选择正确的重载函数进行hook。 ##### 示例:Hook重载函数 ```javascript Java.perform(function () { var MyClass = Java.use("com.example.MyClass"); // 钩子方法...

    JNI函数详解(英文)

    1. `JNI_GetDefaultJavaVMInitArgs`:这个函数提供创建虚拟机实例时默认使用的初始化参数值。这些参数是特定于虚拟机实现的,允许开发者根据需要定制虚拟机的配置。 2. `JNI_CreateJavaVM`:此函数用于创建一个新的...

Global site tag (gtag.js) - Google Analytics