博客搭建之路: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 小时前
键盘演奏:我写了一个键盘音效引擎
程序员·github
清风微拂5 小时前
别再用记事本看日志了:我给程序员做了个大日志查看器
程序员
kyriewen5 小时前
别再用防抖做懒加载了:120 张图只加载出 4 张
前端·javascript·程序员
一只爱撸猫的程序猿6 小时前
当任何人都能生成一万行代码:什么变得稀缺
人工智能·后端·程序员
LeoLi6386 小时前
随机应变,不是见招拆招:AI 干 6 倍工时之后,我把它做成了三层降级链路
人工智能·程序员
SimonKing10 小时前
又找到一个纯Java的OCR项目,识别的格式还挺多
java·后端·程序员
陈随易11 小时前
副业搞钱点子之赛事与活动
前端·后端·程序员
楠风测开11 小时前
接口工具 + AI 文档生成
程序员
会开车的鸟哥12 小时前
编写测试序列与测试评估完整示例
程序员
codigger15 小时前
别再手动催 AI 干活了:一文读懂 Loop Engineering(循环工程)
ai·程序员·编程语言·#人工智能