注意: 本文档更新可能有延迟,请以实际代码为准。
自动目录

代码示例

点击查看示例


本插件依赖于ptlib.js中的自动目录模块以及ptlibex.less中的样式。
可以单独提取为独立的插件

传入json构造数据的格式


    tmp_data=[
        {
            t:'Title',//标题文字
            l:'this is Link',//链接
            c:[],//tmp_data结构,子元素
            i:1,//等级,对应 1 2 3 4 5 6 影响不同样式下的显示效果
            ex:{},扩展内容
        },
    ]

                

文档自动化工作原理

在调用autocatalog时,会通过css选择器:
h1,h2,h3,h4,h5,h6,.pt-ac-h1,.pt-ac-h2,.pt-ac-h3,.pt-ac-h4,.pt-ac-h5,.pt-ac-h6
找到页面中所有的目录项。 自动写入目录。

如果有以上选择器的元素不希望被编入目录,可以添加 pt-ca-rm类来排除

本页的文档导航就是使用AutoCatalog的一个应用案例

点击 AutoCataLog示例 查看应用


文档

本文档直接用来展示AutoCatalog示例,AC是一款自动化的目录插件,依赖于ptlib.js与ptlib.less。

后续会考虑将其单独提取作为独立的js组件展示。

AutoCataLog的特点

autocatalog设立之初就是为了快速的进行web开发导航,并且适应大部分场景,如后台管理界面,文章导航界面,模块导航界面。

  • 简单,可以独立使用,采用原生JavaScript开发,无依赖框架
  • 通用,集成多种通用样式,满足常用的开发需求。
  • 可制定性


自动化初始

自动化寻找文档中的标题元素或被标记的元素生成文档


转换已有列表初始

将已经有的目录列表转换为浮动侧边目录


参数初始

将构成目录列表的数据作为参数传递给catelog并初始化侧边目录


参数示意

参数 说明 可选参数
struType 构造方式

说明以什么样的方式来构建目录,需要同数据源配合使用

  • htmlele:通过html元素选择器自动抓取目录数据
  • htmllist:通过html元素选择器自动载入列表数据
  • json:通过传入的json数据来构造目录
dataS 数据源 html元素选择器或构造目录的json数据
style 显示风格

定义显示风格

  • catalog:目录显示风格
  • menu:菜单显示风格
  • touch:触摸弹出的面板显示风格
leaveClose 离开目录是否自动收起 默认为false, 可选参数 true false
title 展开按钮的文字描述 默认为 目录

htmlele模式下折叠分组的标记

htmlele模式下折叠分组使用 pt-ac-ff pt-ac-fc 来进行控制,pt-ac-ff设定为折叠分组标题, pt-ac-fc为折叠的内容。 折叠分组可递归

定义与示例

autoCatalog2.init({'struType': 'json', 'dataS': jsonData, 'style': 'catalog',leaveClose:false})
                    
点击查看示例

autoCatalog2.init({'struType': 'json', 'dataS': jsonData, style: 'menu',leaveClose:false,title: "功能导航"})
                
点击查看示例
autoCatalog2.init({'struType': 'json', 'dataS': jsonData, 'style': 'touch',leaveClose:false,title:"功能"})
                
点击查看示例

                
点击查看示例