各浏览器对link标签onload/onreadystatechange事件支持的差异分析


Posted in Javascript onApril 27, 2011

1,onload事件

<!DOCTYPE HTML> 
<HTML> 
<HEAD> 
<meta charset="utf-8" /> 
<title>Link Element onload</title> 
<link type="text/css" rel="stylesheet" href="http://i3.sinaimg.cn/rny/webface/login/css/login101021_min.css" onload="alert(this)"/> 
</HEAD> 
<BODY> 
</BODY> 
</HTML>

IE6/7 :

各浏览器对link标签onload/onreadystatechange事件支持的差异分析

IE8/9 :

各浏览器对link标签onload/onreadystatechange事件支持的差异分析

Opera :

各浏览器对link标签onload/onreadystatechange事件支持的差异分析

即IE6/7/8/9/Opera都支持onload事件, Firefox/Safari/Chrome不支持。

注:用JS创建link标签再添加到head中,情况如上。
2,onreadystatechange事件

<!DOCTYPE HTML> 
<HTML> 
<HEAD> 
<meta charset="utf-8" /> 
<title>Link Element onreadystatechange</title> 
<link type="text/css" rel="stylesheet" href="http://i3.sinaimg.cn/rny/webface/login/css/login101021_min.css" onreadystatechange="alert(this)"/> 
</HEAD> 
<BODY> 
</BODY> 
</HTML>

IE6/7/8/9中弹出了两次,其它浏览器均没有弹。说明只有IE支持link元素的onreadystatechange事件。弹出两次分别是readyState为loading,complete状态。可使用readyState来判断载入情况。我们再使用JS动态创建link元素试试,
<!DOCTYPE HTML> 
<HTML> 
<HEAD> 
<meta charset="utf-8" /> 
<title>Link Element onreadystatechange</title> 
</HEAD> 
<BODY> 
<script> 
function createEl(type, attrs){ 
var el = document.createElement(type), 
attr; 
for(attr in attrs){ 
if(attrs.hasOwnProperty(attr)){ 
el.setAttribute(attr, attrs[attr]); 
} 
} 
return el; 
} 
var link = createEl('link', { 
href : 'http://i3.sinaimg.cn/rny/webface/login/css/login101021_min.css', 
rel : 'stylesheet', 
type : 'text/css' 
}); 
link.onreadystatechange = function(){ 
alert(this) 
} 
document.getElementsByTagName('head')[0].appendChild(link); 
</script> 
</BODY> 
</HTML>

IE6/7/8/9中仍然弹出了2次。Firefox/Safari/Chrome仍然没弹。貌似一切正常,但神奇的是这次在Opera中弹出了一次,说明Opera支持动态创建link元素时的onreadystatechange事件。

相关:

https://developer.mozilla.org/en/HTML/Element/link
http://msdn.microsoft.com/en-us/library/ms535848%28v=VS.85%29.aspx
http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-one-html.html#ID-35143001

Javascript 相关文章推荐
JS实现仿百度输入框自动匹配功能的示例代码
Feb 19 Javascript
js实现遮罩层划出效果是生成div而不是显示
Jul 29 Javascript
每天一篇javascript学习小结(Date对象)
Nov 13 Javascript
javascript 判断一个对象为数组的方法
May 03 Javascript
详解微信小程序Page中data数据操作和函数调用
Sep 27 Javascript
jQuery中元素选择器(element)简单用法示例
May 14 jQuery
vue 解决form表单提交但不跳转页面的问题
Oct 30 Javascript
Vue.js实现可编辑的表格
Dec 11 Javascript
element-ui树形控件后台返回的数据+生成组织树的工具类
Mar 05 Javascript
nuxt+axios实现打包后动态修改请求地址的方法
Apr 22 Javascript
原生JavaScript实现贪吃蛇游戏
Nov 04 Javascript
插件导致ECharts被全量引入的坑示例解析
Sep 23 Javascript
仅IE9/10同时支持script元素的onload和onreadystatechange事件分析
Apr 27 #Javascript
js实时监听文本框状态的方法
Apr 26 #Javascript
Javascript中的window.event.keyCode使用介绍
Apr 26 #Javascript
Javascript中正则表达式的全局匹配模式分析
Apr 26 #Javascript
说明你的Javascript技术很烂的五个原因
Apr 26 #Javascript
jQuery学习总结之元素的相对定位和选择器(持续更新)
Apr 26 #Javascript
用jquery实现自定义风格的滑动条实现代码
Apr 26 #Javascript
You might like
PHP 字符串编码截取函数(兼容utf-8和gb2312)
2009/05/02 PHP
php 启动报错如何解决
2014/01/17 PHP
destoon切换城市后实现logo旁边显示地区名称的方法
2014/08/21 PHP
php数组排序usort、uksort与sort函数用法
2014/11/17 PHP
php基于Redis消息队列实现的消息推送的方法
2018/11/28 PHP
Laravel5.1 框架表单验证操作实例详解
2020/01/07 PHP
JavaScript与函数式编程解释
2007/04/27 Javascript
javascript 拷贝节点cloneNode()使用介绍
2014/04/03 Javascript
javascript实现数独解法
2015/03/14 Javascript
javascript编写贪吃蛇游戏
2015/07/07 Javascript
通过学习bootstrop导航条学会修改bootstrop颜色基调
2017/06/11 Javascript
浅谈vue-cli加载不到dev-server.js的解决办法
2017/11/24 Javascript
vue新vue-cli3环境配置和模拟json数据的实例
2018/09/19 Javascript
vue实现弹框遮罩点击其他区域弹框关闭及v-if与v-show的区别介绍
2018/09/29 Javascript
微信小程序实现蒙版弹出窗功能
2019/09/17 Javascript
解决layui弹出层layer的area过大被遮挡的问题
2019/09/21 Javascript
vue内置组件keep-alive事件动态缓存实例
2020/10/30 Javascript
[08:02]DOTA2牵红线 zhou神抱得美人归
2014/03/22 DOTA
Python多进程fork()函数详解
2019/02/22 Python
python画微信表情符的实例代码
2019/10/09 Python
Python使用py2neo操作图数据库neo4j的方法详解
2020/01/13 Python
Python坐标轴操作及设置代码实例
2020/06/04 Python
Python把图片转化为pdf代码实例
2020/07/28 Python
深入浅析Python代码规范性检测
2020/07/31 Python
CSS3悬停效果案例应用
2012/11/21 HTML / CSS
C#里面如何判断一个Object是否是某种类型(如Boolean)?
2016/02/10 面试题
网友共享的几个面试题关于Java和Unix等方面的
2016/09/08 面试题
校园新闻广播稿
2014/01/10 职场文书
幼儿园运动会加油词
2014/02/14 职场文书
实现中国梦思想汇报2014
2014/09/13 职场文书
担保书范本
2015/01/20 职场文书
六年级语文下册教学计划
2015/01/22 职场文书
2015年保育员个人工作总结
2015/05/13 职场文书
欠款证明
2015/06/24 职场文书
CSS filter 有什么神奇用途
2021/05/25 HTML / CSS
CSS Transition通过改变Height实现展开收起元素
2021/08/07 HTML / CSS