首页 相关文章 JS教程:addDOMLoadEvent事件

JS教程:addDOMLoadEvent事件

由于 windowonload 事件需要在页面所有内容(包括图片等)加载完后,才执行,但往往我们更希望在 DOM 一加载完就执行脚本。其实在现在大部分主流浏览器上(Firefox 3+,Opera 9+,Safari 3+,Chrome 2+)都提供了这一事件方法:

documentaddEventListener init 

那对于 IE 我们如何模拟 addDOMLoadEvent 事件呢?

Matthias Miller 最早提供了如下的解决方案:



/*@if (@_win32)
document.write("script id=__ie_onload defer src=javascript:void(0)\/script");
var script = document.getElementById("__ie_onload");
script.onreadystatechange = function() {
if (this....[ 查看全文 ]

2016-02-20 标签:
  • 标签:Web开发
    原文:http://www.cssrain.cn/article.asp?id=985 首先是最常规的方法: p id="para" title="cssrain demo!" onclick="test()" test/p script function test(){   alert("test"); } /script 当某一天,我们知道JavaScript要跟HTML结构实现分离后,就会改了一种写法: p id="para" title="cssrain demo!"test/p script function te...[ 查看全文 ]
  • 标签:Web开发
    行为是实现网页上交互的一种捷径,Dreamweaver MX 2004 行为将 javascript 代码放置在文档中,以允许访问者与 Web 页进行交互,从而以多种方式更改页面动作或执行某些任务。行为是事件和由该事件触发的动作的组合。         下面我们来学习行为的用法。现在,举个例子加以说明。看下图,光标移到图片上面。在它的右侧即显示一段其它内容(动画)。请您用鼠标测试,然后...[ 查看全文 ]
  • 标签:Web开发
    毫无疑问,John Resig 是一个细致且善于思考的人,对于我们通常使用的匿名函数,在他的细究之下,也能挖掘出一些新的东西。通常情况下,当一个函数调用自身时,递归就出现了,对于下面这样的函数调用,我们并不陌生。 1.function yell(n){ 2.       return n 0 ? yell(n-1) + "a" : "hiy"; 3.} 4.alert( yell(4))//结果为:hiyaaaa; 单个函数看...[ 查看全文 ]
  • 标签:Web开发
    今天我们开始第五讲,在上一讲()中,我们学习了在MooTools 1.2中建立和使用函数的几种不同方式。下一步就是理解事件了。和选择器类似,事件也是建立互动界面的一个重要部分。一旦你掌握了一个元素,你需要去决定什么行为来触发什么效果。先把效果留着以后在讲,我们首先看一看中间步骤和一些常见的事件。 左键单击事件 左键单击事件是web开发中最常见的事件。超链接识别点击事件,然后把你带到另外一个U...[ 查看全文 ]
  • 标签:Web开发
    事件是可以被JavaScript侦测到的行为。 事件 JavaScript使我们有能力创建动态页面。事件是可以被JavaScript侦测到的行为。 网页中的每个元素都可以产生某些可以触发JavaScript函数的事件。比方说,我们可以在用户点击某按钮时产生一个onClick事件来触发某个函数。事件在HTML页面中定义。 事件举例: 鼠标点击  页面或图像载入  鼠标悬浮于页面的某个热点之上  在表单中选取输入框&nb...[ 查看全文 ]
  • 标签:Web开发
    lightbox源码解析 function getPageScroll(){ var yScroll; if (self.pageYOffset) { yScroll = self.pageYOffset; //NS } else if (document.documentElement && document.documentElement.scrollTop){ // Explorer 6 Strict yScroll = document.documentElement.scrollTop; } else if (document.body) {// all other Explorers yScroll = document.body.scrollTop; } arrayPageScroll = ne...[ 查看全文 ]
  • 标签:Web开发
    数组就是某类数据的集合,数据类型可以是整型、字符串、甚至是对象 Javascript不支持多维数组,但是因为数组里面可以包含对象(数组也是一个对象),所以数组可以通过相互嵌套实现类似多维数组的功能 1.1 定义数组 声明有10个元素的数组 var a = new Array(10); 此时为a已经开辟了内存空间,包含10个元素,用数组名称加 [下标] 来调用,例如 a[2] 但此时元素并未初始化,调用将返回 undefined ...[ 查看全文 ]
  • WML教程7:WML的事件 WML 的事件 内部事件(Onevent) 相关属性: type:内部事件的触发条件,当前浏览器状态满足触发条件时,浏览器就会触发这个条件下设置的Task,内部事件总共有4种触发条件。 1 ontimer 满足时钟设置的条件时,该条件成立。关于时钟设置问题,后面还有专门的说明。 2 onenterbackward 通过Prev或其他外部命令返回到当前Card,该条件成立。 3 onenterforward 当浏览器通过链...[ 查看全文 ]
  • 标签:Web开发
    1、基本概念 JavaScript 是基于对象(object-based)的语言。这与Java不同,Java是面向对象的语言。而基于对象的基本特征,就是采用事件驱动(event-driven)。它是在用形界面的环境下,使得一切输入变化简单化。通常鼠标或热键的动作我们称之为事件(Event),而由鼠标或热键引发的一连串程序的动作,称之为事件驱动(Event Driver)。而对事件进行处理程序或函数,我们称之为事件处理程序(Event Han...[ 查看全文 ]
  • 标签:Web开发
    作用域(scope)是JavaScript语言的基石之一,在构建复杂程序时也可能是最令我头痛的东西。记不清多少次在函数之间传递控制后忘记关键字引用的究竟是哪个对象,甚至,我经常以各种不同的混乱方式来曲线救国,试图伪装成正常的代码,以我自己的理解方式来找到所需要访问的变量。 这篇文章将正面解决这个问题:简述上下文(context)和作用域的定义,分析可以让我们掌控上下文的两种方法,最后深入一种 高...[ 查看全文 ]
  • 标签:Web开发
    9.3  在线小测试程序 在本章中,我们将对在线小测试程序作两处修改。一是允许用户首先选择回答完问题所需要的时间,二是允许用户选择要回答多少个问题。 要把在线小测试程序转换为一个基于计时器的程序,只需修改两个页面,即QuizPage.htm页面和GlobalFunctions.htm页面。 首先,需要修改的是QuizPage.htm页面中小测试程序的开始表单,在新的程序中,将允许用户选择要回答多少个问题以及答题的时间...[ 查看全文 ]
  • 标签:Web开发
    同时做的一些实例测试,然后整理如下: -------------------------------------------------------------------------------- 理解 JavaScript 闭包 本文结合 ECMA 262 规范详解了闭包的内部工作机制,让 JavaScript 编程人员对闭包的理解从嵌套的函数深入到标识符解析、执行环境和作用域链等等 JavaScript 对象背后的运行机制当中,真正领会到闭包的实质。 简介 Closure 所谓闭包,指的是一个拥有...[ 查看全文 ]
  • 标签:Web开发
     JS教程:日期格式转换函数。 script     function   str2date(str){     var   d=null;     var   reg=/^(\d{4})-(\d{2})-(\d{2})   (\d{2}):(\d{2}):(\d{2})\.(\d+)$/     if(arr=str.match(reg))d=new   Date(Number(arr[1]),Number(arr[2])-1,Number(arr[3]),Number(arr[4...[ 查看全文 ]
  • 标签:Web开发
    Thickbox是jQuery的一个插件plugins;它可以实习弹出框效果;这个效果比浏览器自定义的效果要好的多,并且还可以自定义弹出框里的内容; 开发者:Cody Lindle Thickbox的官方网址:http://jquery.com/demo/thickbox/ 下载:可以在官方网址点击thickbox.js 、thickbox-compressed.js、ThickBox.css 、loadingAnimation.gif链接;其中thickbox-compressed.js是压缩版的JavaScript代码,loadingAnimation.gif...[ 查看全文 ]
  • 标签:Web开发
    事件处理 概述 事件处理是对象化编程的一个很重要的环节,没有了事件处理,程序就会变得很死,缺乏灵活性。事件处理的过程可以这样表示:发生事件 - 启动事件处理程序 - 事件处理程序作出反应。其中,要使事件处理程序能够启动,必须先告诉对象,如果发生了什么事情,要启动什么处理程序,否则这个流程就不能进行下去。事件的处理程序可以是任意 JavaScript 语句,但是我们一般用特定的自定义函数(...[ 查看全文 ]
  • 标签:Web开发
    单击事件onClick 当用户单击鼠标按钮时,产生onClick事件。同时onClick指定的事件处理程序或代码将被调用执行。通常在下列基本对象中产生: button(按钮对象) checkbox(复选框)或(检查列表框) radio (单选钮) reset buttons(重要按钮) submit buttons(提交按钮) 一切文本和图片 例:可通过下列按钮激活alert(): html head /head body Form Input type="button" Value="你好 " onClick="aler...[ 查看全文 ]
  • 标签:Web开发
    缓动,学名为Tween,缓冲移动的简称。要想页面内容切换起来舒服,就使用淡入淡出特效,要想让页面元素动起来自然,就要使用缓动效果。这两个混合起来,可以衍生多种特效的。感谢Flash开发人员为我们做了那么多先行研究,我们直接把它们拆出来装在各种菜单与相册中。我们先从最简单的东西做起,加速与减速。 既然是缓动,它就一定涉及以下概念:距离,时间与速度。我们可以想象存在一条直线L,点A与点B就...[ 查看全文 ]
  • 标签:Web开发
    从一个简单的问题谈起: script type="text/javascript"alert(i); // ?var i = 1;/script 输出结果是undefined, 这种现象被称成预解析:JavaScript引擎会优先解析var变量和function定义。在预解析完成后,才会执行代码。如果一个文档流中包含多个script代码段(用script标签分隔的js代码或引入的js文件),运行顺序是: step1. 读入第一个代码段step2. 做语法分析,有错则报语法错误(比如...[ 查看全文 ]
  • 标签:Web开发
    JavaScript所提供的语句分为以下几大类: 1.变量声明,赋值语句:var。 语法如下: var 变量名称 [=初始值] 例:var computer = 32 //定义computer是一个变量,且有初值为32。 2.函数定义语句:function,return。 语法如下: function 函数名称 (函数所带的参数) { 函数执行部分 } ...[ 查看全文 ]
  • 标签:Web开发
    使用JS是可以让函数不直接执行的,而是在过了一个指定的时间间隔后才执行。这就叫做事件事件。 With JavaScript, it is possible to execute some code NOT immediately after a function is called, but after a specified time interval. This is called timing eve...[ 查看全文 ]
手机页面 收藏网站 回到头部