javascript - 如何防止光标在元素上时消失
问题描述
我有一些下拉列表:
<div id="projectPopup">
<h1 id="projectTitle">Select Project</h1>
<div class="projectOption" style="background: rgba(220, 220, 220, 0.6);">Test project for time tracking</div>
<div class="projectOption">TimeTracking</div>
</div>
它在我点击链接后出现,并得到 display: flex style; 还有这个点击开始超时:
clockifyButton.popupTimer = setTimeout(() => {
popup.style.display = "none";
startWithDescription();
}, 5000);
在 5s elem 得到 display: none 样式后,我需要使用 display: flex,当光标在它上面时,我该怎么做?感谢转发!!!
#projectPopup {
position: fixed;
margin-left: 85%;
top: 0;
width: 230px;
display: none;
z-index: 999;
flex-direction: column;
border: 1px solid #D3D3D3;
background: rgba(255, 255, 255, 0.9); /* Цвет фона */
box-shadow: 0 0 10px rgba(0,0,0,0.5); /* Параметры тени */
}
这是弹出窗口的样式
解决方案
您可以尝试在 mouseleave 事件上启动 popupTimer。但重要的是在 mouseenter 事件中控制计时器,移除旧计数器,否则您将有很多计数器同时运行。
推荐阅读
- c# - 我可以在 Unity 中的特定位置销毁克隆的游戏对象吗?
- php - 如何在 laravel 中为 hasMany 关系分页(App\News::user 必须返回一个关系实例)
- php - 将 MySQL 更改为由 bot 电报接受的特殊值
- windows - 修改安装路径
- java - 抽象类中的单元测试具体方法
- excel - 选择excel范围内的最后一个非空单元格
- javascript - 单击的表格单元格值内的 Javascript 表格单元格值
- jquery - jQuery淡出然后提交()
- python - mdiArea.subWindowActivated 和 qtablewidget.itemActivated 之间的冲突
- c# - JSON to object 不适用于 ajax 调用