说明
「搜索导航」是一个用于管理常用网站的本地单页应用,支持一 / 二级分类、站点图标、访问统计、搜索引擎直达与本地文件同步。数据默认保存在浏览器本地存储中,也可绑定本地 JSON 文件,实现在本地跨浏览器同步。

1界面总览

页面从上到下依次由以下区块组成,鼠标悬停在卡片上会有蓝色左边框高亮(与搜索导航应用内的卡片一致)。

顶部导航栏
Logo + 外部搜索引擎搜索框 + 右侧按钮组:同步、绑定数据文件、清空、导出、导入、使用说明。
工具栏
新建、管理、默认分类下拉框、站内搜索框,以及右侧六个统计胶囊。
一级分类快捷栏
「全部」+ 各一级分类芯片,芯片左侧数字为该分类下的站点数量;单击切换、双击重命名,过多时可展开 / 收起。
二级分类快捷栏
选中一级分类后显示其下的二级分类,「全部」为该一级下的所有站点;未选一级时提示「请先选择一级分类」。
站点卡片网格
圆形图标 + 站点名称。点击图标新标签打开网址,双击名称编辑;卡片随窗口宽度自动换行排列。
提示 Toast
操作结果在右上角滑入提示,绿色成功、红色失败、橙色警告、蓝色信息,约 2.6 秒后自动消失。

2快速上手

三步开始使用:加一个站点 → 点图标直达 → 绑定文件长久保存。

添加一个站点
step 1
  1. 点击工具栏「新建」。
  2. 填写站点名称与跳转地址(两项必填)。
  3. 选择一级 / 二级分类(没有就用 + 新建)。
  4. 点击「保存」。
点击直达
step 2
  1. 用搜索或分类芯片找到站点。
  2. 点击站点圆形图标,新标签打开。
  3. 该站点访问次数 +1,今日 / 本月同步累加。
  4. 双击站点名称可随时改资料。
绑定数据文件
step 3
  1. 在主浏览器点「绑定数据文件」。
  2. 选定一个本地 JSON 文件当作数据库。
  3. 此后改动自动写回该文件。
  4. 换浏览器时绑定同一文件并点「同步」。
首次打开是空的应用不带演示数据。两种起步方式:一是用工具栏「新建」逐个添加;二是点导航栏「导入」,选择已有的 JSON 备份(如随包附带的 117条数据.json),一次性灌入整套站点与分类。

3站点管理

新建站点
核心
点击工具栏「新建」打开模态框,填写以下字段后点「保存」。
字段说明
站点名称 必填卡片下方显示的名字,过长时仍完整显示(鼠标悬停可见完整名称)。
跳转地址 必填点击图标后打开的网址。填 zhihu.com 会自动补全为 https://zhihu.com。
图标地址站点图标的图片 URL。留空或加载失败时,自动降级显示站点名称的首字母。
一级分类 必填下拉选择已有分类;点右侧 + 可现场新建。
二级分类 必填跟随所选一级分类联动;同样可用 + 新建。不想细分时选「全部」。
地址安全规则出于安全考虑,javascript: / data: / vbscript: / about: 等协议会被拒绝保存;带端口的地址(如 example.com:8080)不会被误判为协议。
编辑站点
双击卡片上的站点名称打开编辑框,标题旁会显示该站点的「访问次数」。改完点「保存」,列表与统计立即更新,并自动跳到该站点所在的分类。
删除站点
双击站点名称打开编辑框,点左下角红色「删除」,确认后该站点被永久移除(已绑定文件时也会同步删除)。
访问站点
点击卡片的圆形图标区域即可在新标签打开该网址,同时该站点访问次数 +1,并计入今日 / 本月 / 累计统计。
默认分类
工具栏的下拉框选一个一级分类后,每次打开网页都直接落在该分类;选「默认分类」则恢复为显示全部。该偏好会长期记住。

4分类管理

站点采用「一级分类 + 二级分类」两层结构,两级都配上,上百个站点也能一眼定位。

快捷栏:单击切换
筛选
  • 点一级芯片切换一级分类,二级自动回到「全部」。
  • 点「全部」芯片显示所有站点。
  • 芯片左侧数字是该分类下的站点数量。
  • 切换分类会清空搜索框;刷新页面保留当前选择,关闭浏览器后回到默认分类。
快捷栏:双击重命名
双击
  • 双击一级或二级芯片进入输入态。
  • 按 Enter 或点击别处确认,按 Esc 取消。
  • 重命名会同步更新该分类下所有站点。
  • 重名、使用保留字「全部」或留空都会提示失败。
新建 / 删除:模态框
+ 号
  • 在「新建 / 编辑站点」弹窗里点分类右侧 +,输入名字回车即创建。
  • 一级分类新建后自带一个「全部」二级分类。
  • 「全部」是系统元分类,不能新建、不能重命名也不能删除。
  • 新建失败的原因通常是重名或用了保留字。
批量整理:管理弹窗
管理
  • 点工具栏「管理」,弹窗分「一级分类 / 二级分类」两个页签。
  • 每行可直接改 ID 与名称,改 ID 数值即可调整排序(升序)。
  • 顶部搜索框实时过滤;左下「新增」加行,右侧 × 标删。
  • 保存失败会整体回滚,不会留下半改状态。
删除分类的连带效果在管理弹窗里删除一级分类,其下所有站点会被一并删除;删除二级分类,则该二级下的站点会回到「全部」,站点本身保留。操作时请留意行尾显示的站点数量。
旧数据自动迁移早期版本里的「其它」「待定」分类,导入时会自动迁移为「全部」;分类信息缺失的备份,站点会归入第一个一级分类并给出提示,可在管理弹窗里再调整。

5查找与搜索

站内搜索
即时过滤
  • 在工具栏搜索框输入,边打边过滤,无需回车。
  • 同时匹配站点名称、网址、一级分类、二级分类四个维度,不区分大小写。
  • 输入超过 6 个字时,分类芯片上的名字会被截断显示,不影响匹配。
  • 没有任何匹配时,网格显示「没有匹配的数据」。
回车跨分类查找
Enter
  • 搜索框有内容时按 Enter。
  • 若全库中能匹配到站点,自动切到「全部」分类展示结果。
  • 搜索框为空时按回车,输入框会抖动提示。
  • 点搜索框右侧的 × 可一键清空并恢复全量列表。
外部搜索引擎直达
导航栏
  • 导航左侧的搜索框:左边选引擎,右边输关键词。
  • 内置 5 个引擎:必应、百度、360、夸克、神马。
  • 按 Enter 直接在新标签打开搜索结果页。
  • 选过的引擎会被记住,下次打开仍是它(默认必应)。
三种筛选叠加
组合
  • 一级分类 → 二级分类 → 站内搜索,三者可叠加生效。
  • 例如:一级「电商」+ 二级「阿里」+ 搜索「后台」。
  • 切换分类会清空搜索词,避免结果互相打架。
  • 找不到就点一级栏「全部」回到全量。
两个搜索框各管一段导航栏搜索框走外部搜索引擎,工具栏搜索框只在自己的站点库里找。站点少了先用前者,站点多了后者更快。

6统计面板

工具栏右侧的六个统计胶囊实时更新,鼠标悬停会高亮。

高频访问次数最多的站点名 站点站点总条数 总数累计访问次数 本月本月点击次数 昨日昨日点击次数 今日今日点击次数
胶囊含义数据来源
高频访问次数最多的那个站点的名称(超过 12 字会截断加省略号)各站点 usage 字段的最大值,全为 0 时显示「-」
站点当前站点总数列表条数
总数所有站点累计访问次数之和usage 求和
本月本月内点击图标的总次数点击时累加,跨月重置
昨日昨日点击图标的总次数由「今日」跨天后滚动转入
今日今日点击图标的总次数点击时累加,跨天清零
只统计点图标只有点击站点圆形图标才会计数。双击名称打开编辑、切换分类、清搜索这些操作都不计入;跳转地址为空的站点点击无效,也不会虚增计数。

7数据管理

导出
点击导航栏「导出」并确认,下载 JSON 文件,文件名形如 搜索导航数据-20261008-1330.json,含站点、分类表与全部访问统计。
导入
点「导入」选 JSON 文件 → 再次确认。导入将覆盖当前所有站点与分类;格式不符时提示「无效的备份文件」,解析失败会说明具体原因。
清空
点「清空」并确认,所有站点、访问统计、分类与默认分类偏好全部重置;已绑定文件时,文件内容也会一并清空。
不可恢复清空与导入覆盖都无法撤销。建议在这两个操作之前,先点「导出」留一份备份。

8本地文件同步 · 多浏览器共用一份数据

绑定一个本地 JSON 文件后,这个文件就成了你的「本地安全数据库」:数据不只躺在某个浏览器里,而是始终落在你自己掌控的文件上,换浏览器也能接着用。

数据流向 主浏览器 A增删改 → 自动写回data.json → 浏览器 B点「同步」 → 显示A 的最新数据
主浏览器 A(写入端)
绑定一次
  1. 点击导航栏「绑定数据文件」,选择一个 JSON 文件(如随包附带的 117条数据.json)。
  2. 此后的每次新增、编辑、删除、点击访问都会自动写回该文件。
  3. 数据同时保存在:浏览器本地存储 + 这个 JSON 文件,双份不冲突。
  4. 文件放在本机任意路径、任意分区均可,全程不经过任何服务器。
其他浏览器 B(读取端)
每次先用同步
  1. 用 Chrome、Edge、夸克、QQ 浏览器等打开同一个网页。
  2. 同样点「绑定数据文件」,选中同一个 JSON 文件(每个浏览器只需绑定一次)。
  3. 每次使用时点一下「同步」,文件里的最新数据就会拉进当前浏览器。
  4. 主浏览器 A 之后新增或删除的内容,在 B 里同步后立刻可见。
哪些操作会自动写回文件
自动
  • 新建站点、编辑保存、删除站点
  • 点击站点图标(访问次数 +1)
  • 新建一级 / 二级分类
  • 双击重命名一级 / 二级分类
  • 分类管理里调整 ID、名称、增删
  • 设置默认分类、导入数据、清空数据
「同步」做了什么
覆盖式
  • 读取绑定文件的最新 JSON。
  • 以文件内容为准替换当前浏览器的数据。
  • 再写入本地存储、刷新统计并回写规范化后的数据。
  • 因此「同步」永远以 JSON 文件为主,不会反向覆盖文件。
同一时间只在一个浏览器里改同步是「以文件为准」的单向覆盖。若 B 浏览器本地有未写回文件的改动,点同步会被文件内容替换掉。稳妥做法:在 B 里先点同步,再看 / 再点;要改东西就回主浏览器 A 改。
每个浏览器都要绑定一次文件句柄保存在各自浏览器的 IndexedDB 中,互不共享。换浏览器、清理浏览数据后需要重新绑定;同一浏览器重启后通常会自动恢复绑定,偶尔会弹一次授权确认,允许即可。
浏览器要求绑定与同步基于 File System Access API,需最新版 Chrome 或 Edge。夸克、QQ 等若不支持,点击「绑定数据文件」会提示「浏览器不支持」,这类浏览器可用「导出 / 导入 JSON」作为替代方案。

9快捷键与其他操作

键盘快捷键
键盘
按键功能
Enter搜索引擎框:打开搜索结果;站内搜索框:跨分类查找;新建分类输入框:确认创建
Esc关闭当前打开的模态框、确认框,或取消正在进行的重命名 / 新建分类
Tab / Shift+Tab弹窗内循环切换焦点(焦点不会跑到弹窗外)
关闭弹窗的三种方式
通用
  • 点击右上角 × 或右下「取消」。
  • 点击弹窗外的半透明遮罩区域。
  • 按键盘 Esc 键。
  • 弹窗打开时页面主体不再跟随滚动。
返回顶部
悬浮
页面向下滚动超过一定距离后,右下角出现圆形按钮,点击平滑滚动回顶部;回到顶部后按钮自动隐藏。
操作提示 Toast
反馈
保存成功
「知乎」已添加
未绑定数据文件
请先点击「绑定数据文件」选择 JSON 文件,然后点击「同步」

10数据存储与屏幕适配

数据存在哪里
存储
位置用途
localStorage键名 search_nav_data_v1,保存站点、分类、访问统计
localStorage键名 default_category,记住设置的默认分类
localStorage键名 ext_selected_engine,记住导航栏搜索引擎偏好
sessionStorage键名 session_active_category / session_active_subcategory,刷新保持当前分类,关闭浏览器即失效
IndexedDB库名 search-nav-fs,仅在绑定文件后保存文件句柄
绑定的本地 JSON 文件可选的持久化同步载体
响应式表现
适配
屏幕宽度布局
桌面宽屏导航一行铺开,站点卡片按宽度自动换行、整体居中
≤ 640px工具栏搜索框独占一行,卡片间距收窄,表单改单列
≤ 480px(手机)导航左侧整体换行,外部搜索框占满整行
系统开启「减弱动态效果」自动关闭所有过渡动画
换浏览器 / 换设备本地存储与浏览器绑定,不会自动跨浏览器。两种迁移方式:一是「导出」得到 JSON,在另一台设备「导入」;二是把 JSON 文件放在本机任意路径下,让各浏览器都「绑定数据文件」,用「同步」拉取最新内容。