修改hexo的搜索框
看到有人推荐swiftype,就试着弄到博客里,然后惊喜的发现NexT已经内置了!为了保持整体风格的简洁,我把landscape-plus里的搜索框部分移植了过来。以下是需要修改的地方,总的来说还是蛮容易的。
在菜单栏添加搜索部件
修改<!--增加swiftype搜索功能-->
和<!--增加swiftype搜索功能end-->
之间的代码:
1 |
|
注意,我这个版本(Apr 16, 2015)里原来的js代码已经过时。
修改css定义
在header.styl
添加下面代码:
1 |
|
另外,在header.styl
的header-inner
样式里增加:
|
在_mist.styl
里删掉site-meta
的:
|
避免撑破页面。
增加弹出动作的js代码
在_layout.swig
里适当位置添加:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<script type="text/javascript">
var $searchWrap = $('#search-form-wrap'),
isSearchAnim = false,
searchAnimDuration = 200;
var startSearchAnim = function(){
isSearchAnim = true;
};
var stopSearchAnim = function(callback){
setTimeout(function(){
isSearchAnim = false;
callback && callback();
}, searchAnimDuration);
};
$('#search-btn').on('click', function(){
if (isSearchAnim) return;
startSearchAnim();
$searchWrap.addClass('on');
stopSearchAnim(function(){
$('#search-form-input').focus();
});
});
$('#search-form-input').on('blur', function(){
startSearchAnim();
$searchWrap.removeClass('on');
stopSearchAnim();
});
</script>
1 |
|
做完这些别忘了去_config.yml
填上swiftype_key,注意是根目录下的配置文件,不是主题里的。