js dom的setTimeout与setInterval不同浏览器兼容测试(1/2)

<html>
<head>
<title>setTimeout example</title>

<script type="text/javascript教程">
function delayedAlert()
{
  timeoutID = window.setTimeout(slowAlert, 2000);
}

function slowAlert()
{
  alert("That was really slow!");
}

function clearAlert()
{
  window.clearTimeout(timeoutID);
}

window.setTimeout('window.parent.generateOutput()', 1000);
function generateOutput(aConcise) {
  if(aConcise)
    parent.generateConciseOutput();
  else
    parent.generateOutput();
}
window.setTimeout(generateOutput, 1000, true);

</script>
</head>

<body>
<button onClick="delayedAlert();"
 >show an alert box after 2 seconds</button><br>
<button onClick="clearAlert();">Cancel</button>
<!--
使用setTimeout的小技巧

  (1)IE中给setTimeout中的调用函数传参数
  上面的分析可知,IE是不支持在setTimeout中给被调用的函数传参数的,为了浏览器世界的和谐,我们可以把函数调用参数包裹进新的匿名函数中。示例:
  function f(a){
  alert(a);
  }
  // setTimeout(f,50,'hello'); //用于非IE
  setTimeout(function(){f('hello')},50); //通用
  var str='hello';
  setTimeout(function(){f(str)},50); //通用

  (2)this问题
  setTimeout调用的函数被执行时的上下文是全局,而不再是调用setTimeout方法时的上下文。所以,setTimeout的第一个参数的函数被执行时其this是指向window的,如果需要保留调用setTimeout方法时的this,就需要把当时的this传进去。示例:
  function Person(name){
  this.name=name;
  var f=function(){alert('My name is '+this.name)};

  // setTimeout(f,50); //错误

首页 1 2 末页

时间: 2024-08-17 11:19:31

js dom的setTimeout与setInterval不同浏览器兼容测试(1/2)的相关文章

浅谈js中startsWith函数不能在任何浏览器兼容的问题

在做js测试的时候用到了startsWith函数,但是他并不是每个浏览器都有的,所以我们一般要重写一下这个函数,具体的用法可以稍微总结一下. 在有些浏览器中他是undefined 所以我们可以这样的处理一下 if (typeof String.prototype.startsWith != 'function') {    String.prototype.startsWith = function (prefix){    return this.slice(0, prefix.length)

跨浏览器兼容测试有关的大量资源

跨浏览器是所有网页设计师都会碰到的常见问题,当完成一个页面后,经常会要测试IE,FF等多种常用浏览器软件.有时候客户也会要求兼容更多浏览器,当电脑里没有安装这类浏览器时就会显得很麻烦,所以推荐那些为跨浏览器测试范畴的网页设计师可以阅读下本文 我们生活在一个幸福又痛苦的时代,有太多的浏览器可以使用,对 Web 开发与设计者而言,你有义务保证你的设计兼容所有主流浏览器.然而跨浏览器测试是件相当复杂的事,涉及不同的浏览器,不同的版本,不同的平台.本文介绍了与跨浏览器兼容测试有关的大量资源. 在线测试资

跨浏览器兼容测试8大利器

中介交易 SEO诊断 淘宝客 云主机 技术大厅 仅仅是一年前,跨浏览器兼容测试还不是一件容易事,市面上的测试工具都有一些缺陷,要么太贵,要么功能有限,要么很难用.最近我们终于看到了一些新 的工具出现,其中的一些可谓十分出色.本文精选8种最新的跨浏览器测试工具,这7款简单的工具让你的工作变得十分容易,而且它们完全免费. #1 - Xenocode Browser Sandbox Xenocode Browser Sandbox 改变了基于 Windows 的浏览器兼容测试工具的游戏规则,只需点一下

setTimeout和setInterval的浏览器兼容性分析_基础知识

无意中测试AJAXRequest浏览器兼容性的时候,发现AJAXRequest.update方法在某些情况下在IE里有问题,经过测试找到是setTimeout和setInterval的问题. 问题出现在当调用AJAXRequest.update方法时,如果带了更新间隔及更新次数,那么在IE下面就会出现问题,具体表现为带了更新间隔时是函数工作,带上更新次数时函数无法在更新指定次数后停止执行. 测试几个例子之后找到了问题所在,在IE里,setTimeout和setInterval是不支持参数传递的.

js计时器之setTimeOut和setInterval用法

从根本上来说,理解计时器如何工作很重要.通常情况下,计时器的行为并不直观,因为它在一个单独的线程中,让我们从三个函数的测试开始,对于每一个函数我们都有机会构建和控制计时器. JS里设定延时: 使用SetInterval和设定延时函数setTimeout 很类似.setTimeout 运用在延迟一段时间,再进行某项操作. setTimeout("function",time) 设置一个超时对象 setInterval("function",time) 设置一个超时对象

js修改input的type属性及浏览器兼容问题探讨与解决_javascript技巧

js修改input的type属性有些限制.当input元素还未插入文档流之前,是可以修改它的值的,在ie和ff下都没问题.但如果input已经存在于页面,其type属性在ie下就成了只读属性了,不可以修改.在ff下仍是可读写属性. 今天遇到个问题,输入框有默认值"密码",但获得焦点时,"密码"两字会去掉,输入时直接变成"****"的password类型.很明显,一开始的时候,input的类型是text,后来变成了password类型.直观的思路是

IETester模拟多浏览器兼容测试web标准工具

在IE7刚出道时,涉及到不同IE前的表现标准不统一时,当制作者需要测试不同IE之间的页面CSS兼容性时,需要在不同电脑上测试.随后 multiple-ie 出来了,让我惊喜了一段时间,因为它可以在同一台电脑上,同时使用IE5.5/IE6/IE7,确实在很大的程度上增加了页面制作测试的便利.(multiple-ie 下载) 现在,又出现了一个让人激动人心的工具,那就是IETester,以下是IETester的简介: IETester是一个非常棒的网页设计师的必备工具,有了这个工具,就可以知道网页在

13个不同浏览器兼容性测试的免费软件工具

前端开发人员最头疼的,莫过于形形色色的浏览器间的兼容性问题.每天绞尽脑汁地为这些本不应该存在的东西费尽心思.由于各个浏览器内核及解析方式的不同,使得相同的前端代码不能实现相同的效果.所以,培养良好标准的代码编写习惯的同时,熟练掌握浏览器兼容性测试的常用工具也是必需的了.这里是网络上传播较多的13个不同操作系统中各色浏览器兼容性测试的软件工具. HTML和CSS验证 首先让我们先看一看检查验证HTML与CSS的方法.我应该说到的是由于我在MAC上工作,会略微偏向于MAC.不要担心,仍然有许多平台独

网站的浏览器兼容性测试

中介交易 SEO诊断 淘宝客 云主机 技术大厅 浏览器是互联网产品客户端的核心软件,也是网站访问的必备软件.不同厂商的浏览器对Java.JS.ActiveX.plin-ins的支持承担也各有差异.即使是同一厂家的浏览器,也会存在不同的版本的问题.例如,ActiveX是Microsoft的产品,是为Internet Explore而设计的;JS是Netscape的产品等.另外,框架和层次结构风格在不同的浏览器中也有不同的显示.目前最为常用的浏览器为IE6.0.IE7.0,但由于操作习惯的问题,还有