Javascript OnmouseMove不能与Chome中的SetTimeOut和警报一起工作

Javascript OnmouseMove不能与Chome中的SetTimeOut和警报一起工作,javascript,google-chrome,alert,settimeout,onmousemove,Javascript,Google Chrome,Alert,Settimeout,Onmousemove,这个代码怎么了?它可以在IE和FireFox中使用,但Chrome不起作用。 其思想是,函数fnTimeOut将在onmousemove之后的5秒钟内触发(fnTimeOut附加在onmousemove-in文档中)。没关系。但当我在Chrome中点击“ok”按钮时,fnAlert功能会立即触发。它应该在我移动鼠标5秒钟后拍摄。。。请帮帮我。 <input type="button" onclick="alert(1);" value="ok"> document.onmou

这个代码怎么了?它可以在IE和FireFox中使用,但Chrome不起作用。 其思想是,函数fnTimeOut将在onmousemove之后的5秒钟内触发(fnTimeOut附加在onmousemove-in文档中)。没关系。但当我在Chrome中点击“ok”按钮时,fnAlert功能会立即触发。它应该在我移动鼠标5秒钟后拍摄。。。请帮帮我。

<input type="button" onclick="alert(1);" value="ok">


document.onmousemove=fnTimeOut;
var t=null;
函数fnAlert()
{
警报(2);
}
函数fnTimeOut()
{
清除超时(t);
t=设置超时(fnAlert,5000);
}

我一定错过了什么。您的按钮有一个onclick,表示显示一个警报框。没有代码试图延迟警报

我不明白到底是什么原因,FF和IE在点击按钮时不会立即显示警报


如果您希望在鼠标移动或单击按钮5秒后调用fnAlert,则应将按钮上的onclick设置为“fnTimeOut()”

我肯定缺少什么。您的按钮有一个onclick,表示显示一个警报框。没有代码试图延迟警报

我不明白到底是什么原因,FF和IE在点击按钮时不会立即显示警报


如果您希望在鼠标移动或单击按钮5秒后调用fnAlert,则应将对按钮的onclick设置为“fnTimeOut()”

onmousemove在每次鼠标移到文档上时都会被触发,因此您的警报仅在鼠标停止移动后显示

也就是说,它在我的Chrome安装上运行良好,下面是代码

<html>
<head>
  <script>

  document.onmousemove = fnTimeOut;

  var t = null;

  function fnAlert()
  {
      alert(2);
  }

  function fnTimeOut()
  {
      clearTimeout( t );
      t = setTimeout( fnAlert, 5000 );
  }
  </script>


</head>
<body></body>

</html>

document.onmousemove=fnTimeOut;
var t=null;
函数fnAlert()
{
警报(2);
}
函数fnTimeOut()
{
清除超时(t);
t=设置超时(fnAlert,5000);
}

onmousemove每次鼠标移动到文档上时都会被触发,因此您的警告只有在鼠标停止移动后才会显示

也就是说,它在我的Chrome安装上运行良好,下面是代码

<html>
<head>
  <script>

  document.onmousemove = fnTimeOut;

  var t = null;

  function fnAlert()
  {
      alert(2);
  }

  function fnTimeOut()
  {
      clearTimeout( t );
      t = setTimeout( fnAlert, 5000 );
  }
  </script>


</head>
<body></body>

</html>

document.onmousemove=fnTimeOut;
var t=null;
函数fnAlert()
{
警报(2);
}
函数fnTimeOut()
{
清除超时(t);
t=设置超时(fnAlert,5000);
}

据我所知,alert和confirm语句会重置settimeout计时器,这会导致在刷新时立即执行给定代码


我没有亲自尝试过,但也许您可以通过null或随机变量语句修改点击内容(当前为警报)来确认这一点?

据我所知,警报和确认语句会重置settimeout计时器,这会导致在刷新时立即执行给定代码


我没有亲自尝试,但也许你可以通过一个空或随机变量语句来确认修改点击内容(当前是一个警报)?

同样的问题,我认为这是Chrome浏览器的一个缺陷… 在chrome 8+Win XP中;这是错误的;但是Chrome10+WinXp还可以;Chrome18又错了……但它在某些操作系统(如Linux)上不再出现。有人这么说吗

在我的代码中,我使用“onmouseover”/“onmouseout”替换“onmousemove”。现在看起来不错


但是,在document element Mouse中,尽管困难…

同样的问题,我认为这是Chrome浏览器的一个缺陷… 在chrome 8+Win XP中;这是错误的;但是Chrome10+WinXp还可以;Chrome18又错了……但它在某些操作系统(如Linux)上不再出现。有人这么说吗

在我的代码中,我使用“onmouseover”/“onmouseout”替换“onmousemove”。现在看起来不错


但是,在document元素mouseOVER困难…

注意,我放了:==>document.onmousemove=fnTimeOut;请注意,我放置了:==>document.onmousemove=fnTimeOut;好啊你说得对。但是,如果在页面上放置一个带有代码的按钮,并将fnAlert的代码更改为window.location.href=“login.asp”,会发生什么情况?在my crhome中,当您单击按钮时,用户将立即重定向到登录页面!这是一个大问题…你能发布所有的HTML吗,因为我所做的工作与预期的一样,fnAlert在我停止移动鼠标5秒后被称为fnAlert。单击时,按钮显示1。。。。但是,如果单击警报需要5秒钟,则我希望函数会启动。Ok。你说得对。但是,如果在页面上放置一个带有代码的按钮,并将fnAlert的代码更改为window.location.href=“login.asp”,会发生什么情况?在my crhome中,当您单击按钮时,用户将立即重定向到登录页面!这是一个大问题…你能发布所有的HTML吗,因为我所做的工作与预期的一样,fnAlert在我停止移动鼠标5秒后被称为fnAlert。单击时,按钮显示1。。。。但是,如果单击警报需要5秒钟的时间,则我希望该功能启动。