Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何仅在鼠标悬停在某个元素上一段时间时触发鼠标悬停事件_Javascript_Html - Fatal编程技术网

Javascript 如何仅在鼠标悬停在某个元素上一段时间时触发鼠标悬停事件

Javascript 如何仅在鼠标悬停在某个元素上一段时间时触发鼠标悬停事件,javascript,html,Javascript,Html,当用户将鼠标放在按钮上一段时间时,我想更改按钮的背景。我想改变背景,只有当鼠标停留在图像上整整一秒钟,以便错误地鼠标越过按钮 我使用了下面的代码,但不幸的是没有结果。你能指出我在哪里犯的错误吗 <html> <script> var stillmouseover=0; function bcAnimation(y){ setTimeout( function(){if (y.addEventListener('mouseover')) {stil

当用户将鼠标放在按钮上一段时间时,我想更改按钮的背景。我想改变背景,只有当鼠标停留在图像上整整一秒钟,以便错误地鼠标越过按钮

我使用了下面的代码,但不幸的是没有结果。你能指出我在哪里犯的错误吗

<html>
<script>
  var stillmouseover=0;

  function bcAnimation(y){  
    setTimeout(   function(){if (y.addEventListener('mouseover')) {stillmouseover = 1; } }, 2000);
    if (stillmouseover == 1) { y.style.backgroundColor = "Red";  }
  }
</script>

<body>
<button id='x' onmouseover="bcAnimation(this);" style="width:100;height:100;border:2;">i</button> <br> <br>
</body>
</html>

您可以做的最好的事情是在调试器中逐步完成代码。您不仅可以解决代码中的问题,还可以学习如何在未来的代码中解决未来的问题。谢谢您的评论。我有时会这样做。但我想我犯了一些概念上的错误。因为如果我在If块中使用任何测试警报,它都不会出现。但是,这个问题的可能副本中没有jQuery,onhover在普通JS中不存在。如果下面的答案有用,请继续跟进。