Loving Coding & Visual Design

setInterval的问题

setInterval作为定时触发某一个函数是很有用的工具,可是当我们要调用的函数带有变量的时候,常常出现如下的错误:
Error: parentnode.removechild is not a function
Error: useless setInterval call (missing quotes around argument?)

根据这里的解释,问题出在setInterval里用引号处理变量名的时候,例如:
codeSnippet = "clockUpdate(" + fieldId + ")";

fieldId会被当作是一个字符串变量被函数clockUpdate引用,如果fieldId不是字符串,而是对象,照样会被解析成字符串变量。所以在这里有一个技巧,帮助我们引用非字符串变量:
codeSnippet = "clockUpdate(""+fieldId+"");";

虽然mozilla定义的setInterval语法可以帮助我们轻松调用参数:
intervalID = window.setInterval(func, delay[, param1, param2, ...]);

但是这个方法用IE7不管用,它会提示未定义参数的错误。
结合上面提到的,我想setInterval最好还是调用用字符串变量作为参数的函数。



下一页


最 近 文 章

  1. Yahoo抢钱来了!! - Tue, 08 Jul 2008 05:54:04 +0000
  2. PHP5: Non-static method should not be called statically - Wed, 25 Jun 2008 04:53:04 +0000
  3. 手机上网的最佳选择-Opera Mini - Fri, 20 Jun 2008 14:21:08 +0000
  4. 超炫的flash 3D引擎:Alternativa3D - Fri, 20 Jun 2008 08:23:45 +0000
  5. Objects on PHP5, Javascript and AS3 - Fri, 18 Jul 2008 02:58:41 +0000
  6. 在中国银行托收支票居然要户口薄 - Tue, 10 Jun 2008 13:12:40 +0000
  7. session_start(): Failed to initialize storage module - Thu, 05 Jun 2008 01:06:57 +0000
  8. 由facebook走向开源想到的 - Wed, 28 May 2008 08:35:10 +0000
  9. Windows 7的新界面 - Wed, 28 May 2008 07:44:27 +0000
  10. 给Google Translate的一点建议 - Fri, 23 May 2008 05:23:55 +0000