Update 2 files

- /Gemfile
- /_posts/2025-06-02-optimize.md
master
mayx 2025-06-02 15:55:05 +00:00
parent 0a34660f94
commit 5cc76892b3
2 changed files with 2 additions and 1 deletions

View File

@ -8,6 +8,7 @@ group :jekyll_plugins do
gem "jekyll-feed", "~> 0.15.1"
gem "jekyll-include-cache", "~> 0.2.1"
gem "jekyll-readme-index", "~> 0.3.0"
gem "jekyll-default-layout", "~> 0.1.5"
gem "jekyll-theme-minimal"
gem "jekyll-paginate", "~> 1.1.0"
gem "kramdown-parser-gfm", "~> 1.1.0"

View File

@ -56,7 +56,7 @@ tags: [博客, 优化, IndieWeb]
## 关于全文搜索的兼容性优化
其实从功能的角度来说这种东西肯定是在IE8下可以实现的但是我用的[那个库](https://github.com/christian-fei/Simple-Jekyll-Search)有点迷到处都用的是const关键字结果还莫名其妙[判断XHR](https://github.com/christian-fei/Simple-Jekyll-Search/blob/master/src/JSONLoader.js#L29)搞的好像是在兼容旧浏览器改起来有点麻烦懒得搞了……不过除此之外还有个取巧的方式既然我搜不了干脆让谷歌来搜吧至于谷歌支不支持IE8就不是我的事了🤣所以直接给搜索框外面套了一个form表单这样甚至可以在不启用JS的情况下搜索假设谷歌支持没有JS的情况
## 对于订阅软件的兼容性支持
之前我的博客对订阅的支持是使用的官方的[jekyll-feed](https://github.com/jekyll/jekyll-feed)插件它只支持Atom格式的订阅一般的阅读器也是支持这种格式的即使是IE8也是完美支持。但是我发现有非常少数的某些网站没办法解析Atom只支持RSS……所以我只好特地加了[对RSS格式的支持](https://github.com/Mabbs/mabbs.github.io/blob/master/rss.xml)还顺带搞了支持Atom和RSS格式的[XSLT模板](https://github.com/Mabbs/mabbs.github.io/blob/master/feed.xslt.xml)来预览。既然RSS也支持了那干脆连[JSONFeed](https://github.com/Mabbs/mabbs.github.io/blob/master/feed.json)也一起做了吧😆,虽然意义不是很大……
之前我的博客对订阅的支持是使用的官方的[jekyll-feed](https://github.com/jekyll/jekyll-feed)插件它只支持Atom格式的订阅一般的阅读器也是支持这种格式的即使是IE8也是完美支持。但是我发现有非常少数的某些网站没办法解析Atom只支持RSS……所以我只好特地加了[对RSS格式的支持](https://github.com/Mabbs/mabbs.github.io/blob/master/rss.xml)还顺带搞了支持Atom和RSS格式的[XSLT模板](https://github.com/Mabbs/mabbs.github.io/blob/master/feed.xslt.xml)来预览。既然RSS也支持了那干脆连[JSONFeed](https://github.com/Mabbs/mabbs.github.io/blob/master/feed.json)也一起做了吧😆,虽然意义不是很大……
## 给博客添加网页快讯
既然要兼容IE8那当然是能用的都用啦在IE8订阅网站源的地方有一个添加网页快讯的功能。因为没有可以参考的网站我甚至都没理解这个功能展现的效果是什么样的。我看这个网页快讯好像是抄了一部分[hAtom Microformat](http://microformats.org/wiki/hatom)的规范我还以为是每个条目都单独需要一个entry-title和entry-content结果发现并不是😅一个hslice只能有一个entry-title……
这个功能其实非常简单主要作用就是把网页的一部分切出来单独展示当这一部分发生更新的时候IE浏览器就会提示用户。然后在这之中hslice要包裹所有需要处理的元素写到最外面元素的class中就可以entry-title是希望用户订阅时展示的名字而entry-content是被切下来展示的网页。具体的内容可以在[微软官方文档](https://learn.microsoft.com/en-us/previous-versions/windows/desktop/cc304073(v=vs.85))中看到。