HTML代码
<div class="menu"> <div class="menu-item"> <h6>Home</h6> </div> <div class="menu-item"> <h6>Contact</h6> </div> <div class="menu-item"> <h6>About</h6> </div> <!--当前被选中的div--> <div class="menu-item current-menu-item"> <h6>Blog</h6> <!--导航栏上的横线--> <div class="wee"></div> </div> <div class="menu-item"> <h6>Jobs</h6> </div> </div>JS代码
$(".menu").ready(function () { //页面加载和窗口调整事件 $(window).on('load resize', function () { //获取class为.wee的标签距离文档左边的的偏移坐标 var $thisnav = $('.wee').offset().left; $('.menu-item').hover(function () { //当前元素距离文档左边的的偏移坐标减去class为.wee的标签距离文档左边的的偏移坐标 var $left = $(this).offset().left - $thisnav; //获取当前元素的外部宽度 var $width = $(this).outerWidth(); $('.wee').css({'left': $left, 'width': $width}); }, function () { var $initwidth = $('.current-menu-item').width(); $('.wee').css({'left': '0', 'width': $initwidth}); }); $('.menu-item').click(function () { $('.menu-item').removeClass('current-menu-item'); $(this).addClass('current-menu-item'); $('.wee').remove(); let $divW = $("<div class='wee'></div>"); $(this).append($divW); $thisnav = $('.wee').offset().left; }) }); });这个是之前在看到某位大佬发布了一个悬浮的,本人是在此基础上进行了一些修改。但是忘记了原网站了,如果有人知道原网站可以告诉我。我会将原网站张贴到最底下。