bootstrap-5 - Bootstrap 5:offcanvas,如何在鼠标离开时关闭它?
问题描述
我想使用 offcanvas 创建一个带有导航栏的网站。它很好用,但我想在鼠标离开功能上实现一个关闭导航栏。
你有什么建议吗?
谢谢你们
解决方案
在 BS5 中这很容易,特别是如果你使用 vanilla JS:
function offCanvasListener(offCanvasId) {
let myOffCanvas = document.getElementById(offCanvasId);
const hideCanvas = () => {
let openedCanvas = bootstrap.Offcanvas.getInstance(myOffCanvas);
openedCanvas.hide();
event.target.removeEventListener('mouseleave', hideCanvas);
}
const listenToMouseLeave = (event) => {
event.target.addEventListener('mouseleave', hideCanvas);
}
myOffCanvas.addEventListener('shown.bs.offcanvas', listenToMouseLeave);
}
//function call
offCanvasListener('offcanvasExample');
推荐阅读
- ruby-on-rails - 我用 url_for 从 Active Storage 调用了一个图像。有什么办法可以将该图像与所属的帖子联系起来吗?在铁轨上
- c# - 如何处理动态表的一行?
- java - 需要一个正则表达式来验证一个 java 字符串
- jackson - 在 Spring Data REST + MongoDB 中使字段可插入但不可更新
- .net-core - 使用 TypeBuilder C# 实现带有属性的接口时如何覆盖设置器
- ios - 为什么所有支持的架构都没有显示在存档审查中?
- ffmpeg - 提取多视频流视频的第一帧
- .net - 以与原始图像相同的大小和质量将图像从数据库保存到磁盘
- android - 如何在 addView 一些 textview 后使 Android 线性布局刷新?
- scala - 在 scala 中使用布尔值评估选项