博客搭建之路:hexo使用next主题博客侧边栏标题点击不跳转

hexo使用next主题博客侧边栏标题点击不跳转

hexo版本5.0.2 npm版本6.14.7 next版本7.8.0

本着我肯定不是第一个出这个问题的人,去github上找了找,果然我不是第一个

好吧,也跟着改吧(修改themes/next/source/js/utils.js),找到registerSidebarTOC函数

ini 复制代码
registerSidebarTOC: function() {
    const navItems = document.querySelectorAll('.post-toc li');
    const sections = [...navItems].map(element => {
      var link = element.querySelector('a.nav-link');
      // 修复侧边栏 标题点击不跳转问题
      var target = document.getElementById(decodeURI(link.getAttribute('href')).replace('#', ''));
      // TOC item animation navigate.
      link.addEventListener('click', event => {
        event.preventDefault();
        //var target = document.getElementById(event.currentTarget.getAttribute('href').replace('#', ''));
        var offset = target.getBoundingClientRect().top + window.scrollY;
        window.anime({
          targets  : document.scrollingElement,
          duration : 500,
          easing   : 'linear',
          scrollTop: offset + 10
        });
      });
      //return document.getElementById(link.getAttribute('href').replace('#', ''));
      return target;
    });

参考文献

相关推荐
程序员cxuan2 小时前
DeepSeek 多模态深度实测,确实有东西的
人工智能·后端·程序员
Hilaku2 小时前
外包前端和大厂前端,写的代码到底有什么本质区别?
前端·javascript·程序员
程序员cxuan2 小时前
一招让你的 Claude 被封了也能用
人工智能·后端·程序员
SimonKing3 小时前
AI逆向实战:一个壁纸网站被我5分钟摸透了,你也能
java·后端·程序员
咔咔学姐kk13 小时前
小白程序员必收藏:轻松入门AI Agent开发,大厂校招新风口!
人工智能·深度学习·ai·程序员·大模型·就业·大模型学习
诸神缄默不语1 天前
如何批量删除Word中的空行(包括只有空格、Tab的行)
程序员
两万五千个小时1 天前
DeepSeek Harness 从 0 开始:19 jobs 后台任务
人工智能·程序员·架构
Sam_Deep_Thinking1 天前
从REST到gRPC,一个API选型的思考框架
java·后端·程序员
Hilaku1 天前
一行 CSS 新特性干掉 20 行 JavaScript ?
前端·javascript·程序员
newerp1 天前
Redis 操作与缓存策略
后端·程序员·go