You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

仪表盘侧边栏Hover交互异常:大Logo无法自动切换回小Logo

侧边栏Logo悬停切换异常修复

问题根源

原代码的逻辑有两个关键问题:

  • 监听全局document的mouseover事件,范围太广且容易引发冲突
  • 加了if($('.large-logo').hasClass('d-none'))的判断——当大Logo显示后(没有d-none类),后续所有鼠标事件都触发不了切换逻辑,自然没法切回小Logo

修复方案

直接给.sidebar绑定精准的mouseenter和mouseleave事件,逻辑更清晰,也不会有多余的判断限制:

HTML(无需修改)

<div class="sidebar">
    <a href="#" class="sidebar-brand px-3">
       <img src="assets/img/large-logo.png" class="large-logo d-none">
       <img src="assets/img/small-logo.png" class="small-logo">
    </a>
</div>

修正后的jQuery代码

// 鼠标移入侧边栏:显示大Logo,隐藏小Logo
$('.sidebar').on('mouseenter', function() {
    $('.large-logo').removeClass('d-none');
    $('.small-logo').addClass('d-none');
});

// 鼠标移出侧边栏:显示小Logo,隐藏大Logo
$('.sidebar').on('mouseleave', function() {
    $('.small-logo').removeClass('d-none');
    $('.large-logo').addClass('d-none');
});

可选优化

如果想让切换更顺滑,给Logo加个过渡动画:

.large-logo, .small-logo {
    transition: opacity 0.3s ease;
}

内容的提问来源于stack exchange,提问作者zuma boy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 02:05:01