# cnblogs-MyTheme
**Repository Path**: oldsaltfish/cnblogs-MyTheme
## Basic Information
- **Project Name**: cnblogs-MyTheme
- **Description**: 博客园的主题修改
- **Primary Language**: Unknown
- **License**: AGPL-3.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-04-06
- **Last Updated**: 2025-09-29
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
## 介绍
该目录下的脚本是本人博客园的js主题脚本。
~~大致上是基于https://github.com/Zou-Wang/CNblogs-Theme-Sakura这个主题的1.0版本进行修改的。 ~~
~~但是事实上我并不是很喜欢这个主题,现在已经将这个主题改得完全不一样了,有非常大的区别。~~
全部重写了,不想再用别人的主题了。
## 使用
博客园开通js权限……
> 并不推荐除了我之外的人使用,因为我并没有新创建一个博客园账号去测试如何从零开始使用这个主题。
由于是自己用的,因此并不会把使用说明写得很详细,但是你可以通过这个仓库,来了解这个博客的样式和js是如何写出来的。
...
1. /css/index.css
2. main.js(main后面可能加数字,因为博客园文件有缓存,改了之后不会立即生效)。
## 开发
使用less简化css的编写。
使用easy-less插件,按Ctrl+S时自动将less文件编译成css文件。
https://marketplace.cursorapi.com/items?itemName=mrcrowl.easy-less
### 博客园环境
1. 博客园自带jquery环境。
截止到2025.3.9,目前的版本是3.3.1。
2. jquery.writeCapture插件,没了解过。
3. css环境,放在env目录下。这些css在网页中自动加载,因此如果我们写html控件,应当考虑这些css的影响。
4. 百度和谷歌,以及博客园自带的js,一万来行,谁去看。
### 博客园脚本执行顺序
页首(#page_begin_html) < 博客主体内容(比如文章) < 页脚(#page_end_html) < 页首缓存引入js < DCL(DOMContentLoaded) < 侧边栏嵌入HTML < src初次引入js(意义不大)
越靠左越早。
1. 哪怕在页首引入js操作文章主体,也是能成功的。
2. sideBar内部的内容生成比DCL更晚,可能是脚本生成的。
如此分析下来,如果要操作sideBar内部生成的内容(比如搜索框),最省事的方法是直接把引入js写在侧边栏html里面。
如果追求最早渲染,那么应该放到页首,然后监听sideBar内部元素出现。
```html
```
### 博客园内联脚本限制
博客园对内联脚本有着某种审核机制。
> 内联脚本就是直接在script标签中写代码的。使用src引入的js文件不受限制。
#### textarea限制
1. textarea限制,反引号包含`