您的位置: 首页 / Experiences, this site / 给 Blog 添加上了 LiveSearch

给 Blog 添加上了 LiveSearch

Published at Jun 10, 1pm / Keywords: , ,

LiveSearch这几天背邓论和三个代表实在是背的头痛,每天 24 个小时有 22 个小时再背这些东西(连做梦都带三个表)。余下的那两个小时,一个小时用于三餐,满足基本生活需要;而另外一个小时就是玩玩电脑,小小 Happy 一下。本来决定这几天不写 Blog 不写代码不上 BBS 的,但最终哪个都没能坚持。算了,邓爷爷教我们一切要从实际情况出发,不做这些事情偶就会有死掉的危险,于是这个勉强的理由也就给我现在做的事情找了些许的安慰。

OK,闲话扯的太多了,说主题。 LiveSearch 这个东西其实并不是什么新鲜的东西,老外的 Blog 上很多都有了,好像 WordPress 也有对应的插件。LiveSearch 本质上就是 Ajax 技术的一个简单的应用,通过实时获取用户输入的信息,通过 XMLHttp 向服务器端发出请求,随后获得一个含有结果的 XML,再通过 Javascript 进行解析以及最终的结果呈现。

其实这个东西对于高手来说不过是雕虫小技,但是对于新手可能我这么简单介绍你还是没看懂。没关系,试试本站首页右侧那个搜索框你就明白了。效果还不错吧,呵呵。

由于我这里使用的 Blog 平台是不支持动态脚本语言的,所以我的 LiveSearch 从理论上算不得 Ajax 程序,因为它缺少了与服务器交互的环节。它只是预先装载一个含有所有文章标题的 XML,然后根据用户输入的内容,通过 Javascript 的 RegExp 对象进行选择,最终输出结果。如果你有条件的话,可以使用你擅长的语言写一个小巧的搜索脚本,这样结果呈现会更好一些,在速度和灵活性方面也会达到一个比较好的平衡点。

由于时间的关系,今天就不贴代码了,需要的用户可以自己从这里保存:
http://istef.nkblog.org/javascripts/ls.js
具体使用方法可以参考一下我的 index.html 页面的源代码。
好了,背邓论去了,明天要考试了,Bless me~~

btw: 刚才用 pop3 收回了 bbs 信箱中的信,发现圈圈发来的祝福信件,在这里先谢谢你啦。也祝你身体早日康复,平时要注意休息哦~~

[修正]6月11日,改进了 XML 文件的载入时间,现在好像能正常工作的,感谢 BunnyQ 的详细测试。

发表您的观点或推荐本文 Loading...