`
zhouyrt
  • 浏览: 1171980 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

事件处理程序的执行上下文

 
阅读更多

以下五种方式添加事件

<!doctype html>
<html>
    <head>
        <title>事件处理程序的执行上下文</title>
        <meta charset="utf-8">
        <style>
            div {
                background: gold;
                margin: 10px;
            }
        </style>
    </head>
    <body>
        <!-- 内联事件代码 -->
        <div id="d1" onclick="alert(this.tagName)">DIV1</div>
        <!-- 内联一个函数 -->
        <div id="d2" onclick="fn()">DIV2</div>
        <!-- DOM 0 -->
        <div id="d3">DIV3</div>
        <!-- DOM 2 -->
        <div id="d4">DIV4</div>
        <!-- IE低版本 -->
        <div id="d5">DIV5</div>
         
        <script>
            function $(id) {return document.getElementById(id)}
            var d1 = $('d1'), d2 = $('d2'), d3 = $('d3'), d4 = $('d4'), d5 = $('d5')
             
            // 事件处理程序
            function fn() {
                if (this.tagName) {
                    alert(this.tagName)
                } else {
                    alert(this)
                }
            }
             
            // DOM 0 (All Browsers)
            d3.onclick = fn
             
            // DOM 2 (IE9/10, FF, Safari, Chrome, Opera)
            try {
                d4.addEventListener('click', fn, false)
            } catch(e) {}
             
            // 低版本IE (IE6/7/8, Opera)
            try {
                d5.attachEvent('onclick', fn)
            }catch(e){}
             
        </script>
    </body>
</html>

 结果如下:

  1. 内联HTML (element)
  2. 内联HTML fn (window)
  3. DOM-0级onXXX (element)
  4. DOM-2级addEventListener (element)
  5. IE低版本attachEvent (IE6/7/8: window, Opera: element)
分享到:
评论

相关推荐

    上下文无关文法转化识别程序

    3. **定义栈操作**:PDA的栈操作是其处理上下文无关文法的关键。需要为每个状态定义何时读入输入符号、何时推栈、何时弹栈以及何时接受输入。这些操作应与文法规则对应。 4. **状态转移函数**:根据文法的产生式,...

    对Linux内核中进程上下文和中断上下文的理解

    当硬件检测到需要处理的事件时,它会向内核发送中断信号,内核会暂停当前进程,转而去执行中断处理程序。在中断处理过程中,硬件和内核之间需要传递一些变量和参数,这些信息构成了中断上下文。 - **中断上下文的...

    winform 阻止线程执行上下文流动源码

    在Windows Forms(WinForm)应用程序开发中,线程执行上下文流动是一个重要的概念,涉及到多线程编程和UI交互。线程执行上下文通常指的是线程的状态、环境以及执行线程时所需的信息。在.NET Framework中,特别是对于...

    Linux 内核进程上下文和中断上下文

    相比之下,中断上下文则是在硬件触发中断时,内核调用中断处理程序时所处的环境。在这一过程中,硬件的一些变量和参数会被传递给内核,而内核则需要保存被中断的进程环境以及中断本身的相关信息,如中断源、中断类型...

    深入理解JavaScript执行上下文、函数堆栈、提升的概念.pdf

    总结来说,JavaScript 执行上下文、函数堆栈和提升的概念是理解 JavaScript 引擎如何处理和执行代码的基础。通过学习这些概念,我们可以更好地理解函数是如何在调用堆栈中运行的,变量和函数是如何被处理的,以及...

    CLR无法从COM 上下文0x645e18 转换为COM上下文0x645f88

    标题中的“CLR无法从COM上下文0x645e18转换为COM上下文0x...综上所述,解决“CLR无法从COM上下文转换”的问题需要理解COM线程模型,优化线程间的通信,以及正确处理长时间运行的操作,以确保良好的性能和用户交互体验。

    IO空间 内存管理 平台设备 中断上下文与进程上下文

    在中断上下文中,CPU会保存当前进程的状态,然后转而执行中断处理程序,处理完后再恢复之前的进程上下文,继续执行被中断的进程。中断上下文不维护任何特定进程的状态,因为它是全局的,服务于所有进程。 理解这些...

    编辑框上下文菜单演示程序代码

    这个"编辑框上下文菜单演示程序代码"是一个实例,它展示了如何实现这种功能,包括处理热键、动态控制菜单项的启用状态等关键点。 首先,我们来详细了解一下编辑框上下文菜单的创建过程: 1. **创建菜单资源**:在...

    操作系统内核程序函数执行上下文的自动检验

    ### 操作系统内核程序函数执行上下文的自动检验 #### 概述 在现代操作系统的设计与实现过程中,内核程序的正确性至关重要。其中,函数执行上下文正确性是确保整个系统稳定运行的关键因素之一。然而,在实际开发中...

    UCOS中断及上下文情景分析

    中断和上下文切换是UCOSII中的关键概念,它们对于理解系统的运行机制至关重要。 首先,中断是处理器接收到硬件或软件事件信号时暂停当前任务并执行特定服务程序的过程。在UCOSII中,中断处理通常涉及到中断服务例程...

    winform 线程执行上下文流动源码

    1. **线程基础知识**:线程是程序执行的流,每个进程可以有多个线程。主线程通常是UI线程,负责处理用户交互,而其他线程则可以执行计算密集型任务,避免阻塞UI。 2. **UI线程限制**:Windows Forms的UI控件不是...

    上下文菜单设计_C#_

    在IT行业中,上下文菜单(Context Menu)是用户界面中不可或缺的一部分,它...理解并熟练运用上下文菜单的创建和事件处理,是C#开发者必备的技能之一。通过不断地实践和优化,我们可以构建出更加高效、易用的应用程序。

    模拟中断事件的处理

    在真实的系统中,中断处理程序会首先保存被中断进程的现场信息,然后处理中断事件,最后进行调度选择新的进程运行。然而,在这个简单的模拟中,可以忽略现场保护和调度步骤,假设处理器总是选择被中断的进程继续执行...

    c语言程序上下文切换和解耦的工具.zip

    在C语言中,可以利用系统调用如`setcontext`、`getcontext`和`swapcontext`来实现用户级别的上下文切换,这通常用于实现轻量级线程(如协程)或者在非阻塞I/O操作中保持程序执行流。 上下文切换的开销包括: 1. CPU...

    操作系统模拟中断事件的处理

    3. **中断处理流程**:当中断事件发生时,CPU会保存当前进程的上下文(包括程序计数器、寄存器状态等),然后跳转到中断处理程序的地址开始执行。中断处理完成后,CPU会恢复之前保存的上下文,然后返回到被中断的...

    上下文菜单

    在编程实践中,上下文菜单的事件处理也是关键。通常,需要监听鼠标的右键点击事件,当事件触发时,弹出上下文菜单。同时,需要为菜单上的每个选项设置相应的点击事件处理,以执行相应的功能。 以“menuDemo上下文...

    如何写上下文菜单

    上下文菜单是用户界面设计中的一个重要元素,它在用户与应用程序交互时提供了便捷的操作选项。在Android、iOS、Windows等操作系统以及许多Web应用中,上下文菜单常常扮演着快速访问功能的角色。当用户对特定视图执行...

    OGNL访问OGNL上下文和Action上下文Struts2rarfdsafsdfasdfas

    开发者可以通过OGNL上下文在不同的范围内查找和设置值,这对于处理复杂的数据交互非常有用。 **Action上下文(Action Context)** Action上下文是Struts2框架的核心组件之一,它提供了对Action执行环境的访问。在...

    MFC中的DC、CDC、HDC、句柄、设备上下文究竟是什么意思?

    当应用程序的框架窗口接收到一个消息时,MFC将搜索该窗口的消息映射,如果存在一个处理消息的处理程序,那么就调用该处理程序。这个机制可以大大提高应用程序的效率和灵活性。 MFC中的DC、CDC、HDC、句柄和设备上...

    中断处理与设备驱动程序

    中断处理程序随后会被调用,它会与设备驱动程序协作,完成数据的传递和状态更新。 总的来说,中断处理与设备驱动程序在计算机系统中起着至关重要的作用,它们共同确保了系统能够有效地与硬件交互,及时响应各种事件...

Global site tag (gtag.js) - Google Analytics