各浏览器对link标签onload/onreadystatechange事件支持的差异分析_javascript技巧
1,onload事件
IE6/7 :
IE8/9 :
Opera :
即IE6/7/8/9/Opera都支持onload事件, Firefox/Safari/Chrome不支持。
注:用JS创建link标签再添加到head中,情况如上。
2,onreadystatechange事件
IE6/7/8/9中弹出了两次,其它浏览器均没有弹。说明只有IE支持link元素的onreadystatechange事件。弹出两次分别是readyState为loading,complete状态。可使用readyState来判断载入情况。我们再使用JS动态创建link元素试试,
<script> <BR>function createEl(type, attrs){ <BR>var el = document.createElement(type), <BR>attr; <BR>for(attr in attrs){ <BR>if(attrs.hasOwnProperty(attr)){ <BR>el.setAttribute(attr, attrs[attr]); <BR>} <BR>} <BR>return el; <BR>} <BR>var link = createEl('link', { <BR>href : 'http://i3.sinaimg.cn/rny/webface/login/css/login101021_min.css', <BR>rel : 'stylesheet', <BR>type : 'text/css' <BR>}); <BR>link.onreadystatechange = function(){ <BR>alert(this) <BR>} <BR>document.getElementsByTagName('head')[0].appendChild(link); <BR></script>
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

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

SpringBoot和SpringMVC都是Java开发中常用的框架,但它们之间有一些明显的差异。本文将探究这两个框架的特点和用途,并对它们的差异进行比较。首先,我们来了解一下SpringBoot。SpringBoot是由Pivotal团队开发的,它旨在简化基于Spring框架的应用程序的创建和部署。它提供了一种快速、轻量级的方式来构建独立的、可执行

在移动互联网时代,手机的性能一直是用户关注的焦点之一。而作为手机芯片市场领头羊的联发科和高通,其旗下的芯片也备受消费者瞩目。近期,联发科推出了天玑8200芯片,而高通则有其代表性的骁龙系列芯片。那么,这两款芯片之间究竟存在怎样的差异呢?本文将对天玑8200与骁龙进行深度的对比分析。首先,从制程工艺来看,天玑8200采用了最新的6nm制程工艺,而高通骁龙的一些

Oracle数据库一直是企业级数据库管理系统的领导者之一,其不断更新迭代的版本也引起了广泛关注。其中,Oracle11g和Oracle12c两个版本作为比较具有代表性的版本,有着许多的差异。本文将针对Oracle11g和Oracle12c的一些重要差异做一些解读,并附上具体的代码示例,帮助读者更深入地了解这两个版本的区别。一、架构差异Oracle1

版本控制:基础版本控制是一种软件开发实践,允许团队跟踪代码库中的更改。它提供了一个中央存储库,其中包含项目文件的所有历史版本。这使开发人员能够轻松回滚错误,查看不同版本的差异,并协调对代码库的并发更改。Git:分布式版本控制系统git是一种分布式版本控制系统(DVCS),这意味着每个开发人员的计算机都拥有整个代码库的完整副本。这消除了对中心服务器的依赖,提高了团队的灵活性和协作能力。Git允许开发人员创建和管理分支,跟踪代码库的历史,并与其他开发者共享更改。Git与版本控制:关键区别分布式vs集

质量评测:一加与荣耀的差异在当今手机市场竞争激烈的环境下,消费者对于手机的质量要求越来越高。在众多手机品牌中,一加和荣耀作为备受关注的品牌之一,备受消费者青睐。两者在市场上拥有一定的话语权,但在质量方面究竟有何差异?本文将从手机质量、性能、用户体验等方面对一加与荣耀进行对比评测,以帮助消费者更好地选择适合自己的手机品牌。一、外观设计一加手机一直以简洁、大气的

Go语言与Java的差异:语法与编程模型Go语言和Java都是现代流行的编程语言,具有许多相似之处,但也有许多差异。这些差异主要体现在语法和编程模型上。语法1.变量声明Go语言中,变量声明需要使用var关键字,而Java中则不需要。例如:varaintinta;2.类型推断Go语言支持类型推断,即编译器可以自动推断变量的类型。例如:a:=10编

Tomcat和Nginx的差异及比较随着互联网的快速发展,网络应用的需求也越来越高,同时Web服务器也得到了越来越多的关注。Tomcat和Nginx作为两个广泛使用的Web服务器,在不同的场景下展现出各自的优势和特点。本文将从不同的角度来对Tomcat和Nginx进行比较,探讨它们的差异。一、背景在深入比较Tomcat和Nginx之前,我们先来了解一下它们的

Golang是一门广受欢迎的编程语言,其在并发编程方面拥有独特的设计理念。在Golang中,堆栈(heap和stack)的管理是一项非常重要的任务,对于理解Golang程序的运行机制至关重要。本文将深入探讨Golang中堆栈的差异,并通过具体的代码示例来展示它们之间的区别和联系。在计算机科学中,堆栈是两种常见的内存分配方式,它们在内存管理和数据存储上有着不同
