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

参考文献

相关推荐
爱勇宝5 小时前
从 Ctrl+CV 到 Enter:程序员正在失去什么
前端·后端·程序员
DyLatte7 小时前
AI 时代,最危险的不是被替代,而是努力不沉淀
前端·后端·程序员
Coffeeee10 小时前
闲聊几句,Android老哥们,你们多久没做技改需求了
android·程序员·代码规范
字节跳动数据库10 小时前
文章分享——相似函数处理方法
人工智能·后端·程序员
AskHarries11 小时前
多 Agent 与任务队列:什么时候需要拆分任务
程序员
蝎子莱莱爱打怪1 天前
DSpark 讲透:DeepSeek 不换模型,硬把 V4 提速 85%,是怎么做到的?
人工智能·面试·程序员
AskHarries1 天前
知识库问答:RAG、文件索引和权限边界
程序员
爱勇宝1 天前
小红花成长新版:模板来了,鼓励也更容易开始
前端·后端·程序员
玄玄子2 天前
webpack publicPath作用原理
前端·webpack·程序员
爱勇宝2 天前
大多数人不是在使用 AI 赚钱,而是在帮 AI 公司赚钱
前端·后端·程序员