博客搭建之路: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;
    });

参考文献

相关推荐
程序员Agions2 分钟前
程序员武学修炼手册(一):入门篇——初学乍练,从 Hello World 到能跑就行
程序员
PPPHUANG18 小时前
Switch2Antigravity: 让 IntelliJ IDEA 与 Antigravity 无缝协作
程序员·intellij idea·vibecoding
zhouzhouya20 小时前
码上星辰,人间烟火:我的2025
前端·程序员·代码规范
凌览1 天前
2026年1月编程语言排行榜|C#拿下年度语言,Python稳居第一
前端·后端·程序员
JOEH601 天前
🚀 别再用 Future.get() 傻等了!CompletableFuture 异步编排实战,性能提升 300%!
后端·程序员
程序员鱼皮1 天前
干掉 Claude Code,这个开源 AI 编程工具杀疯了?
前端·后端·计算机·ai·程序员
pany1 天前
程序员近十年新年愿望,都有哪些变化?
前端·后端·程序员
guanshangshui1 天前
vibe coding 开发软件(一) 模型选择和agent简单使用
程序员
SimonKing1 天前
基于Netty的TCP协议的Socket服务端
java·后端·程序员
Setsuna_F_Seiei2 天前
2025 年度总结:人生重要阶段的一年
前端·程序员·年终总结