+ -
当前位置:首页 → 问答吧 → settimeout的问题

settimeout的问题

时间:2011-09-07

来源:互联网

<HTML>
  <HEAD>
  <SCRIPT>
  function fnFireEvents()
  {
  var count = 1;

  var directCallFunction = function (){
  alert ("直接调用" + count);
  };

  var setTimeoutCallFunction = function (){
  alert ("setTimeout 调用" + count);
  };

  setTimeout(setTimeoutCallFunction);

  count ++;

  directCallFunction ();
 
  count ++;

  setTimeout (setTimeoutCallFunction, 0);

  count ++;

  directCallFunction ();

  count ++;

  }
  </SCRIPT>
  </HEAD>
  <BODY>
  <BUTTON ID="btn" ONCLICK="fnFireEvents();">Button</BUTTON>
  </BODY>
</HTML>

  结果为什么是这样?

  直接调用2
  直接调用4
  setTimout调用5
  setTimout调用5

作者: guojianwei0730   发布时间: 2011-09-07

setTimeout (setTimeoutCallFunction, 0);虽然是0 也有延迟的效果 会让之后的代码先执行

作者: knightzhuwei   发布时间: 2011-09-07

引用楼主 guojianwei0730 的回复:
<HTML>
<HEAD>
<SCRIPT>
function fnFireEvents()
{
var count = 1;

var directCallFunction = function (){
alert ("直接调用" + count);
};

var setTimeoutCallFunction = function ()……


setTimeout 别用~·

直接执行相应方法就行~·

作者: MuBeiBei   发布时间: 2011-09-07

引用 1 楼 knightzhuwei 的回复:

setTimeout (setTimeoutCallFunction, 0);虽然是0 也有延迟的效果 会让之后的代码先执行

参考http://www.cnblogs.com/winner/archive/2008/11/15/1334077.html

作者: knightzhuwei   发布时间: 2011-09-07

调试调试就知道了啊

作者: zsx841021   发布时间: 2011-09-07