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

参考文献

相关推荐
IT技术分享社区43 分钟前
数据库实战:MySQL多表更新JOIN操作的底层原理与性能调优指南
数据库·mysql·程序员
努力的小雨2 小时前
从“Agent 元年”到 AI IDE 元年——2025 我与 Vibe Coding 的那些事儿
后端·程序员
byte轻骑兵12 小时前
【C语言入门】解锁核心关键字的终极奥秘与实战应用(三)
程序员
Justin3go1 天前
HUNT0 上线了——尽早发布,尽早发现
前端·后端·程序员
阿里嘎多学长1 天前
2025-12-30 GitHub 热点项目精选
开发语言·程序员·github·代码托管
Codebee1 天前
初心如磐,AI 落地:Ooder 2025 技术总结与 2026 发展展望
程序员·开源·全栈
无责任此方_修行中1 天前
2025 终于在 AI 代码助手里找到了“Vibe”
程序员·ai编程·trae
阿里嘎多学长1 天前
2025-12-31 GitHub 热点项目精选
开发语言·程序员·github·代码托管
IT技术分享社区2 天前
MySQL统计查询优化:内存临时表的正确打开方式
数据库·mysql·程序员
Kind2 天前
Git 在传输数据时遇到的连接问题 error: RPC failed 导致代码拉不下来解决办法
程序员