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

参考文献

相关推荐
XinZong1 天前
从开发实战聊聊 OpenClaw 能做什么|附AI社交智能体项目落地拆解
程序员
程序员鱼皮1 天前
AI 时代,程序员还有必要刷算法吗?
计算机·ai·程序员·编程·ai编程
DogDaoDao1 天前
【GitHub】System Informer:Windows 平台最强开源系统监控与调试利器
windows·程序员·开源·github·开发工具·system informer
SamDeepThinking1 天前
RocketMQ消息可靠性的三道关卡
java·后端·程序员
Hilaku1 天前
给技术团队定规范,为什么 90% 最后都变成了走形式?
前端·javascript·程序员
码流怪侠1 天前
【GitHub】Claude-Mem 深度解析:为 Claude Code 装上"永久记忆脑"
程序员·github·claude
荔枝学Python1 天前
Agent设计最强书籍:它真的把Agent讲解的非常透彻!!
人工智能·程序员·大模型·大语言模型·agent·ai大模型·智能体
小兵张健2 天前
30天减20斤挑战:少一斤发100红包(11)
程序员
牛奶2 天前
开发者的"奇技淫巧":那些让你效率翻倍的实战技巧
前端·后端·程序员
魔术师Grace2 天前
AI让我退化成原始人了
前端·程序员