JavaScript 版文章自动创建目录导航菜单控件源代码,用来生成文章导航,可生成独立的侧边栏导航菜单

news2024/11/27 16:39:19

特点

  • 支持 UMD 规范;
  • 拥有 AnchorJS 基础功能;
  • 支持中文和英文标题文字生成ID;
  • 支持生成独立的侧边栏导航菜单;
  • 支持直接在文章中生成文章导读导航;
  • 自动分析标题关系,生成段落层级索引值;
  • 可以作为 jQuery 插件使用;
  • 界面简洁大方;
  • 配置灵活,丰富,让你随心所欲掌控 AutocJs;

安装说明

npm install

$ npm install -S autoc.js

CDN 调用

<script src="https://cdn.jsdelivr.net/gh/yaohaixiao/autocjs/dist/autoc.min.js"></script>

调用本地JS文件

<script src="path/to/autoc.min.js"></script>

使用说明

let AutocJs = require('autocjs');

// 创建 Outline 实例
let navigation = new AutocJs({
    // 文章正文 DOM 节点的 ID 选择器
    article: '#article',
    // 要收集的标题选择器
    selector: 'h1,h2,h3,h4,h5,h6',
    // 侧边栏导航的标题
    title: '文章导读',
    // 文章导读导航的位置
    // outside - 以侧边栏菜单形式显示(默认值)
    // inside - 在文章正文一开始的地方显示
    position: 'outside',
    // 标题图标链接的 URL 地址
    // (默认)没有设置定制,点击链接页面滚动到标题位置
    // 设置了链接地址,则不会滚动定位
    anchorURL: '',
    // 链接的显示位置
    // front - 在标题最前面(默认值)
    // back - 在标题后面
    anchorAt: 'front',
    // 是否生成文章导读导航
    isGenerateOutline: true,
    // 是否在文章导读导航中显示段落章节编号
    isGenerateOutlineChapterCode: true,
    // 是否在正文的文章标题中显示段落章节编号
    isGenerateHeadingChapterCode: false,
    // 是否在正文的文章标题中创建锚点
    isGenerateHeadingAnchor: true
});

// 可以在创建导航后,重置配置信息,重新生成新的导航
navigation.reload({
  // 调整位直接在文章内生成导航
  position: 'outside',
  // 并且在文章标题前显示段落的章节层次索引值
  isGenerateHeadingChapterCode: true
})

Options

article

Type: String
Default: '#article'

可选,用来指定页面中显示文章正文的 DOM 节点的 ID 选择器。

selector

Type: String
Default: 'h1,h2,h3,h4,h5,h6'

可选,用来指定 article 节点下,要生成导航的标题标签的选择器。

title

Type: String
Default: '文章导读'

可选,用来指定文章导读导航菜单的标题文字。

position

Type: String
Default: 'outside'

可选,用来指定文章导读导航菜单的显示位置:outside - 生成侧边栏菜单,inside - 直接在文章正文区域的开始位置生成导航菜单。

只有设置了 isGenerateOutline 为 true,position 参数才会起效。

anchorURL

Type: String
Default: ''

可选,用来指定文章标题锚点链接图标的链接地址:‘’ - 点击链接页面滚动到标题位置,其它 URL 值 - 就直接跳转到指定页面了

anchorAt

Type: String
Default: 'front'

可选,用来指定文章标题锚点链接图标的显示位置:‘front’ - 现在在文章标题前面,‘end’ - 显示到标题末尾。

isGenerateOutline

Type: Boolean
Default: false

可选,用来指定是否文章导读导航菜单:true - 生成菜单,false - 不生成菜单(这样配置基本和 AnchorJS 功能一样了)。

isGenerateOutlineChapterCode

Type: Boolean
Default: true

可选,用来指定是否文章导读导航菜单是否显示文章段落层次的索引编号:true - 显示编号,false - 不显示编号。

isGenerateHeadingChapterCode

Type: Boolean
Default: false

可选,用来指定是否在文章标题前面显示文章段落层次的索引编号:true - 显示编号,false - 不显示编号。

isGenerateHeadingAnchor

Type: Boolean
Default: true

可选,用来指定是否在文章标题位置生成锚点链接图标:true - 生成锚点链接图标,并给标题添加 ID 属性,false - 不生成锚点链接图标,仅给标题添加 ID 属性。

Properties

defaults

Type: Objects

静态属性,存储的是 AutocJs 对象默认配置信息。

attributes

Type: Objects

存储的是 AutocJs 对象当前使用中的配置选项。

elements

Type: Objects

存储的是 AutocJs 对象(创建的)相关的 DOM 元素。

data

Type: Objects

存储的是 AutocJs 根据标题 DOM 元素分析的数据。
在这里插入图片描述
完整代码下载地址:JavaScript 版文章自动创建目录导航菜单控件源代码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/88503.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

试着开发一个Pagination组件

1 组件需求和模块设计 我们要实现的分页组件大致效果如下&#xff1a; 组件需求 点击左右分页按钮可以跳转到上一页/下一页&#xff1b;点击中间的页码按钮可以跳转到相应的页码&#xff1b;首页尾页需要始终显示出来&#xff08;如果只有1页则不显示尾页&#xff09;&#x…

数字孪生助力油气管道行业实现资产管理

随着数字孪生技术的发展日臻成熟&#xff0c;各个行业领域都在经历一场翻天覆地的变化。结合国内的油气管网系统建设现状&#xff0c;数字孪生技术对油气管道行业数智化建设必将有重大而深远的意义。 数字孪生助力油气管道行业实现资产管理 北京智汇云舟科技有限公司成立于201…

【发表案例】2/3区计算机视觉类SCI,3个月19天录用

2/3区计算机视觉类SCI 【期刊简介】IF:2.5-3.0&#xff0c;JCR2/3区&#xff0c;中科院4区 【检索情况】SCI 在检&#xff0c;正刊 【征稿领域】面向智能交通应用的物联网驱动计算机视觉技术 录用案例&#xff1a;3个月19天录用 2022.12.05 | Accepted 2022.11.17 | Edit…

全新的 React 组件设计理念 Headless UI

其实&#xff0c;最早接触 Headless UI 是在去年&#xff0c;碰巧看到了一个非常前沿且优秀的组件库 ---- Chakra UI&#xff0c;这个组件库本身就是 Headless UI 的实践者&#xff0c;同时也是 CSS-IN-JS 的集大成者。 我当时看过之后&#xff0c;就对该理念产生了很大的兴趣…

(2022最新)Xray、Rad两款工具的使用与联动

1、Xray的简介 xray 是一款功能强大的安全评估工具&#xff0c;由多名经验丰富的一线安全从业者呕心打造而成&#xff0c;主要特性有: 1、检测速度快。发包速度快; 漏洞检测算法效率高。 2、支持范围广。大至 OWASP Top 10 通用漏洞检测&#xff0c;小至各种 CMS 框架 POC&am…

ClickHouse Senior Course Ⅵ

序言 这里单独说明下分布式表引擎,不用分布式表引擎,感觉ClickHouse就没必要使用了cuiyaonan2000163.com 参考网址: 分布式引擎 | ClickHouse Docs 分布式表引擎的位置: 分布式引擎 分布式引擎本身不存储数据, 但可以在多个服务器上进行分布式查询。 读是自动并行的。读取…

内核动力之源——内存管理

目录 内存管理背后的故事 内存管理概述 常见内存分配策略 LwIP的宏配置及内存管理 见招拆招——动态内存堆 数据结构描述 函数实现 ​以不变应万变——动态内存池 数据结构描述 函数实现 使用C库管理内存策略 无论在哪种系统中&#xff0c;动态内存都是一个非常重要的…

12.5、后渗透测试--内网主机屏幕截图

攻击主机&#xff1a; Kali 192.168.11.106靶机&#xff1a;windows server 2008 r2 192.168.11.134前提&#xff1a;获得 meterpreter shell操作屏幕的几种方式&#xff1a;screenshotscreenshare加载espia模块&#xff0c;使用screengrab一、screenshot # 截图 meterprete…

数据分析案例-往届世界杯数据可视化

目录 1.引言 2.项目简介 2.1数据集介绍 2.2技术工具 3.数据可视化 3.1往届世界杯获奖国家TOP5 3.2往届世界杯比赛数据情况 3.3往届世界杯观众人数情况 3.4往届世界杯主办方情况 3.5往届世界杯冠军队情况 1.引言 足球是世界上非常受欢迎的运动之一&#xff0c;在全球…

数据可视化的最佳实践【不容错过】

在当前的市场中&#xff0c;数据可视化已经成为了传播数据信息的标准和载体。从商业智能BI到新闻媒体行业&#xff0c;处处都存在着数据可视化的影子&#xff0c;它帮助了我们更好的理解数据和交流数据中传达出的信息。研究表明&#xff0c;大脑对于可视化呈现出来的信息更加容…

Spring Cloud Alibaba基础教程:nacos安装

我们在学习springCloud的时候用的注册中心是Eureka: springBoot集成springCloud&#xff08;一&#xff09;注册中心 但是由于houlai Eureka2.0后续不维护&#xff0c;国内就需要一个可靠的注册中心。所以现在大部分都是用nacos。下面我们来说下如何安装nacos 一&#xff1a…

PMP证书含金量高在哪里?

关于 PMP 含金量的问题&#xff0c;争议一直挺大的&#xff0c;报考费这么贵、通过率这么高&#xff0c;身边都有这个证了&#xff0c;考了没有用上就没有含金量了。相信很大一部分人都是这么想的&#xff0c;但是每年依然有上万考生参加考试&#xff0c;这是为啥呢&#xff1f…

量子技术相关的精简介绍

量子信息 量子信息通信技术是利用量子特性的新一代信息通信技术利用量子力学状态的量子密码通信&#xff08;量子密钥分配、量子随机数发生器等&#xff09;、量子计算机&#xff08;处理器&#xff09;及量子传感的技术量子信息通信技术不仅会带来现有ICT技术的划时代变化,而…

Mongodb数据库之主从复制配置实战

Mongodb数据库之主从复制配置实战一、本次实践环境规划1.环境规划2.副本集介绍二、检查本地Mongodb状态1.检查主节点Mongodb状态2.查看从节点mongodb状态三、创建mongodb用户1.进入主节点mongodb2.创建admin账号3.创建root账号四、全部节点的统一配置1.在主节点创建key文件2.将…

抢订单,稳增长!道可云元宇宙平台助力企业竞逐海外市场

受新冠肺炎疫情和国际政治经济形势错综复杂的不利影响&#xff0c;我国的外贸企业普遍面临订单下滑、供应链不畅、经营压力大等困难&#xff0c;国际需求大幅萎缩。随着后疫情时代的来临&#xff0c;我国的疫情防控政策不断优化调整&#xff0c;市场对企业出海抢占商机的关注度…

node只能以管理员的身份运行才能正常使用

node只能以管理员的身份运行才能正常使用&#xff0c;解决办法 下载node后&#xff0c;默认下载包安装在c盘中&#xff0c; 修改方式&#xff1a; npm config set prefix “D:\Program Files\nodejs\node_global” npm config set cache “D:\Program Files\nodejs\node_cache…

Java+SSM客户信息管理系统(含源码+论文+答辩PPT等)

项目功能简介: 该项目采用的技术实现如下&#xff1a; 后台框架&#xff1a;Spring、SpringMVC、MyBatis UI界面&#xff1a;JSP、jQuery 、BootStrap 数据库&#xff1a;MySQL 该客户信息管理系统以实际运用为开发背景&#xff0c;Java开发语言&#xff0c;使用JSP设计页面&am…

Geoserver中预览图层时放大到某一层级不显示(样式Styles中未设置对应比例尺的样式)

场景 GeoServer简介、下载、配置启动、发布shapefile全流程(图文实践)&#xff1a; GeoServer简介、下载、配置启动、发布shapefile全流程(图文实践)_霸道流氓气质的博客-CSDN博客_geoserver简介 geoserver在预览图层时&#xff0c;当发大图层时内容不显示。 比如文字text图…

智能门驱动光耦合器与集成的反馈控制器

介绍 新的ACPL-302J是一种改进的智能门驱动光耦合器隔离电源和简化门驱动的设计。 ACPL-302J具有一个集成的反控制器为DC-DC转换器和一个完整一套故障安全的IGBT诊断、保护和故障报告&#xff0c;提供一个完整的成本有效的门驱动解决方案&#xff08;图1&#xff09;。带2.5A…

网络工程毕业设计题目100例

文章目录0 简介1 如何选题2 最新网络工程选题2.1 Java web - SSM 系统2.2 大数据方向2.3 人工智能方向2.4 其他方向4 最后0 简介 丹成学长&#xff0c;搜集分享最新的网络工程专业毕设毕设选题&#xff0c;难度适中&#xff0c;适合作为毕业设计&#xff0c;大家参考。 学长整…