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

参考文献

相关推荐
爱勇宝7 小时前
研究数字孪生的这半年,做了个 Demo,也有了一些新想法
前端·程序员
掘金小豆7 小时前
Spring AI 实战:从一次可运行的模型调用到 RAG 体系
后端·程序员·ai编程
郝学胜_神的一滴7 小时前
游戏设计:原型与开发 05:读懂动态层,理解玩家如何活在游戏世界
人工智能·程序员
楠风测开8 小时前
Python基础语法:变量、类型、判断和循环
程序员
wing989 小时前
人生第一个私活:不到 2 小时,到手 350 元
前端·后端·程序员
kyriewen11 小时前
我数了 647 条大厂前端 JD:AI 不再只是加分项
前端·程序员·ai编程
Hilaku13 小时前
为什么我在团队里禁止使用 axios?
前端·javascript·程序员
SimonKing14 小时前
别再找笔记了,试试这款轻量级的开源软件:local-notes
后端·程序员·开源
程序员cxuan1 天前
我用 WorkBuddy + ima 把公众号文章做成了知识库。
人工智能·后端·程序员
程序员cxuan1 天前
玩了一天 REA,我号快没了
人工智能·后端·程序员