请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于为何使用setTimeOut的问题

老师,我想知道

  1. 为什么使用setTimeOut会使得打开/关闭sub menu的操作更平滑?
  2. 使用setTimeOut的返回值,是为了避免连续点击的问题嘛

正在回答

1回答

张轩 2020-08-15 08:48:00

同学你好 你可以把timeout 删除掉 去试一下就知道啦 由于事件是绑定在 mouseenter 和 mouseleave 上的,有一个区域正好在交界处 会不断触发这两个事件 循环。使用 timeout 可以解决这个问题。

2 使用返回值是为了 清除 timeout 使用的。

clearTimeout(timer)


1 回复 有任何疑惑可以回复我~
  • 提问者 Nnn_Lillian #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2020-08-17 21:27:00
  • 老师您好!我在这里也有同样的疑问,然后我试着删除了setTimeout,只在handleMouse里保留了setOpen(toggle),但是我没有找到这样的一个交界处会使得mouseEnter和mouseLeave无限循环,请问老师这个交界处是一定会存在吗?
    回复 有任何疑惑可以回复我~ 2022-02-13 08:27:09
  • 同学你好 这个不一定的 其实主要看你的下拉列表的样式,我的样式中,会有这样的一块区域。所以不一定都会这样,看自己的实现就好了。
    回复 有任何疑惑可以回复我~ 2022-02-13 09:36:46
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信