Contents

博客主题更新

Contents

先上链接咯! {% iframe “/assets/github-btn.html?user=ttimasdf&repo=tranquilpeak-hexo-theme&type=star&count=true” 170 20 %}

相对原主题主要添加的功能:

  • 全异步加载(网页、搜索页、评论区)
  • 本地搜索

第一次写 JS ,搞得自己好紧张。 🙈 也是忘了从哪里看来的 Instantclick ,瞬间就入坑了然后给自己的站都加上了。😆

第一次 Fork 现在这个主题时候,原主题是 1.4.0 版(看repo中的 local-search 分支),我自己写的部分特别脏而且都是 bug ,能不能用完全随缘!而且因为 Swiftype 用不了(因为它不能异步加载,而且按钮事件被 instantclick 的覆盖,完全不能用),从 wzpan 的主题里面扒过来一个搜索 js (倒是蛮好用),然后原作者也不好说我太垃圾不太好意思 close (你看看我多给你一个功能你看看看),于是自己默默关掉了 PR ……

这回下决心重头开始一遍,把 patch 导出来,fork 出最新版,重头塞进去……话说写前端手头需要的工具好少(只写过一点点 node 啊,一点微小的工作)

  • npm node包管理,用来装下面两个东西
  • bower web包管理,装 jquery instantclick 什么都可以
  • grunt 相当于makefile ,编译、连接、混淆 scss ,ejs
  • 随便什么编辑器+linter

就可以开始撸代码了!

我觉得 这个主题代码好多啊(我又没写过 JS 嘛),都说 JS 这个语言一不小心就可以把代码写得很难看,我回头看我第一次写的代码确实……烂的像一坨屎一样(。-_-。) 想要瞻仰一下的话,它们还在 local_search 那个分支里,自己的肉舍不得割还是不删好咯 🙈

而且 Javascript 真的是一个面向对象的语言,因为——除了对象啥都没有了。javascript 的对象简陋得相当于 python 里的一个 dict ,向它的 prototype 里面声明类方法,它就可以当爸爸;给一个成员后面加个括号,它就是个函数(不过没有 python 里面的 @property 来得优雅)。一个函数爱起名字就起,不起就不起,想赋值给谁就赋值给谁,名字你想让谁知道谁就知道——函数调用的时候 context 可以改,你不告诉它, 它都不知道自己是谁自己在哪儿

最糟心的是,你觉得你写完了代码应该谁都能用,可浏览器不这么觉得啊,各个浏览器对 JS (准确来讲叫ECMAScript) 不同功能的支持 精确到不同函数的粒度上

反正写完这一波我可不想再写了。