博客搭建之路: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 小时前
睡前幻想——开篇词
程序员
anyup11 小时前
震惊了!中石化将开源组件二次封装申请专利,这波操作你怎么看?
前端·程序员
Keya13 小时前
使用 tinypng 脚本打包为exe 进行压缩图片
前端·python·程序员
LLM大模型14 小时前
LangChain篇-自定义Callback组件
人工智能·程序员·llm
玩转AGI14 小时前
Deepseek篇--开源技术DualPipe 与 EPLB详解
人工智能·程序员·llm
LLM大模型15 小时前
LangChain篇-多模态输入与自定义输出
人工智能·程序员·llm
LLM大模型15 小时前
LangChain篇-自定义工具调用
人工智能·程序员·llm
大模型开发15 小时前
爆火AI工具Dify怎么玩?这绝对是全网最详细的教程(下)
程序员·llm·mcp
快起来别睡了15 小时前
var、let、const傻傻分不清,一篇文章告诉你它们的区别!
前端·javascript·程序员
一块plus19 小时前
参与、拥有、共创:Web3 游戏开启玩家共建时代
算法·程序员·架构