Onload,Onunload,onbeforeunload,$(window).load(function() {})和$(document).ready(function(){})
2015-06-09 15:12
393 查看
Onload,$(window).load(function() {}):元素都加载完毕,才可以执行.
$(document).ready(function(){}):不一定要等所有的js和图片加载完毕,就可以执行.
我们都知道,很多时候,在页面加载完后都需要做一些相应的初始化动作.例如,运行某些js特效,设置表单等等.怎么知道页面加载完了呢?一般情况下都是设置body标签的onload监听window的load事件.但load事件是要在页面的元素全部加载完了才触发的,如果页面上图片较多或图片太大,就会导致初始化的代码未被执行的时候用户就做了其它操作了. Jquery库提供了一个非常方便好用的函数( $(selector).ready()),让我们可以在页面的dom加载完后就可以做相应的操作(当然,这还得看用户浏览器的支持).,而不用等待全部元素加载完成.例如:
$(document).ready(function (){ alert(’use in page script tag’) });
$(document).ready(function (){ alert(’use in import js file’) });
现在让我们来研究一下这个函数的实现.
原理:
在jquery脚本加载的时候,会设置一个isReady的标记,监听DOMContentLoaded事件(这个不是什么浏览器都有的,不同浏览器,jquery运作方式不一样).当然遇到调用ready函数的时候,如果isReady未被设置,那就是说页面未加载完,就会把要执行的函数用一个数组缓存起来,当页面加载完后,再把缓存的函数一一执行.(原文地址:http://blog.csdn.net/lk188/article/details/4359346)
$(document).ready(function(){}):不一定要等所有的js和图片加载完毕,就可以执行.
我们都知道,很多时候,在页面加载完后都需要做一些相应的初始化动作.例如,运行某些js特效,设置表单等等.怎么知道页面加载完了呢?一般情况下都是设置body标签的onload监听window的load事件.但load事件是要在页面的元素全部加载完了才触发的,如果页面上图片较多或图片太大,就会导致初始化的代码未被执行的时候用户就做了其它操作了. Jquery库提供了一个非常方便好用的函数( $(selector).ready()),让我们可以在页面的dom加载完后就可以做相应的操作(当然,这还得看用户浏览器的支持).,而不用等待全部元素加载完成.例如:
$(document).ready(function (){ alert(’use in page script tag’) });
$(document).ready(function (){ alert(’use in import js file’) });
现在让我们来研究一下这个函数的实现.
原理:
在jquery脚本加载的时候,会设置一个isReady的标记,监听DOMContentLoaded事件(这个不是什么浏览器都有的,不同浏览器,jquery运作方式不一样).当然遇到调用ready函数的时候,如果isReady未被设置,那就是说页面未加载完,就会把要执行的函数用一个数组缓存起来,当页面加载完后,再把缓存的函数一一执行.(原文地址:http://blog.csdn.net/lk188/article/details/4359346)
相关文章推荐
- COM学习笔记1_COM初步探索
- 4Sum
- 项目管理 01
- 生产订单修改记录
- 几个DOM属性
- bzoj 3999 线段树区间提取 有序链剖
- 二分查找/暴力 Codeforces Round #166 (Div. 2) B. Prime Matrix
- Mybatis学习(4)实现关联数据的查询
- 欢迎使用CSDN-markdown编辑器
- Linux/lnmp安装/lnmp Redis/SSL配置/LNMP删除.user.ini
- Oracle数据库之创建表空间与用户
- Android Studio上手,基于VideoView的本地文件及流媒体播放器
- 水题 Codeforces Beta Round #70 (Div. 2) A. Haiku
- Object-C-NSFileManager
- Javascript对象Clone实例分析
- centos6.x下让redis以服务方式运行
- apk编译与反编译
- 黑马程序员——java概述
- HDU 4599 Dice
- 计步器