静态导航页设计和实现

11 条回复
102 次浏览

经常有人进假的 DS、WPS 之类的官网,其实百度搜不到多少,都是必应和谷歌多,银狐玩的 SEO 投毒和水坑攻击。
为了避免这种情况,在内网部署一个导航还是有必要的,为什么不用现成的,主要还是不符合我的需求,我要做静态的一方面是为了便于部署,一方面是后面接手的人方便维护。

地址: https://www.mxpy.cn/nav/index.html
bootstrap5.3.3+JS(jQuery 都没用,正常应该用的,AI 没用,我也没说)

1、轻量,不需要各种依赖。
2、便于维护,不用什么工具,记事本就可以维护。
3、支持动态更新,但是数据存在用户本地,这样不需要开发服务端。
4、支持用户自定义书签。
5、支持用户配置导入导出。
6、支持焦点记忆,点击 tab 后记录位置,下次打开就在当前 tab。

之前让 AI 给我做过一个三角洲的导航页,我就拿来让 AI 给我生成了一下类似的风格,做的都是 tab。

总体设计就是

复制
logo
搜索框

分类|分类|分类|分类|分类

网站|网站|网站

为了实现实时更新,把页面做成了动态渲染,网页打开的时候请求 list.json,读取网站信息渲染成 HTML。

复制
/* =========================================================
       加载默认导航
    ========================================================= */

    async function loadNavList() {

        try {

            const response =
                await fetch(
                    "statics/navlist.json?ver=" +
                    Date.now()
                );


            if (!response.ok) {

                throw new Error(
                    "HTTP " +
                    response.status
                );

            }


            const data =
                await response.json();


            if (Array.isArray(data)) {

                navList = data;

            } else {

                navList = [];

            }

        } catch (error) {

            console.error(
                "加载 navlist.json 失败:",
                error
            );

            navList = [];

        }

    }

navlist.json 设计如下:

复制
[
	{
		"title": "墨雪飘影漏洞收集平台",
		"desc": "首家个人身份通过工信部备案的漏洞收集平台",
		"url": "https://v.mxpy.cn",
		"icon": "/favicon.ico",
		"color": "info",
		"category": "默认",
		"badge": "推荐"
	}
]

如果是 badge 为推荐,就会自动加上外部方框。

image
总体就是这样的

既然用户有自定义的需求,那么用户应该是常用,所以设计为自定义站点置顶。

image
添加自定义网站

image
添加时的模态框

image
添加后的自定义站点自动在对应 tab 置顶

现在的问题是没有做分类,头部和底部标识的便捷管理,增删改分类需要手动改两个文件,修改头部、底部只需要修改一个文件。因为这个是给办公场景使用的,所以并没有做娱乐的分类。而且没有对 favicon 请求做超时处理,默认应该是 60s,所以一些境外站点图标是白的要等一会才会加载默认 ico

image
index.html 的 320 行左右

image
main.js 的 200 行左右

目前做的还不完善,而且我不怎么会用 git,所以没有上传 GitHub,有兴趣的可以自己去扣下来。

前排打手
OP
GRD

在 main.js 的 224 行,按格式添加应该是可以的,因为搜索引擎没考虑那么多,就只内置了百度、必应、谷歌、duckduckgo。

前排打手
OP
GRD

忘了换成“讲故事的人”徽章了,发帖扣了 60 金币,换徽章可以省 50 金币,亏麻了。但是高质量奖了 300doge

慷慨解囊

经常有人进假的 DS、WPS 之类的官网,其实百度搜不到多少,都是必应和谷歌多,银狐玩的 SEO 投毒和水坑攻击。

不应该是百度经常搜不到官网嘛,以前经常遇到。现在都不用百度了。Google 很少遇到这种情况,内容农场倒是不少

前排打手
OP
GRD

百度的内容农场已经过不下去了,K 的太严重,现在最多的就是必应,其次谷歌,因为非技术人员,搜索的时候关键词并不是很准确的,TA 们经常搜索:deepseek 桌面下载、WPS 官网下载,等关键词,因为搜索引擎有标签,不同的人、设备、网络,结果也不一样。

展开 1 条评论
前排打手
OP
GRD

主体备案一直有,这个域名去年才买到手,备案晚一点。备完后在境内访问会快很多。

发表一个评论

R保持