使用Tap的静态搜索结果

时间:2012-08-19 18:02:06

标签: jquery full-text-search jekyll static-site

非常新的Web开发和Jekyll,并尝试在我的网站中实现TapirGo以允许静态搜索。看起来他们的Jquery插件在我的网站上是活跃的(当手动添加参数?query = example到我的网站时,它似乎在加载我的网站时提到tap)但我无法弄清楚我的生活如何实际上,结果会显示在任何有意义的内容中。

理想情况下,我的网站上有一个表格会显示结果列表,并允许访问者点击一个表单。

无论如何,这是我的(主要是复制和粘贴)代码:

<script src="http://code.jquery.com/jquery-1.7.2.min.js" type="text/javascript" charset="utf-8"></script>
<script src="/js/libs/modernizr-2.0.min.js"></script>
<script src="/js/libs/respond.min.js"></script>   
<script src="/js/jquery-tapir.min.js"></script>
<script>
    $('#search_results').tapir({'token': '502f16a53f61b006d6000bbc'});
</script>   
</head>
<body>
<div id="search_results"></div>
</body>

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

如果要显示结果,则需要创建输入文本和按钮。您不需要调用tapir(...)方法,因为它们实现它的方式是垃圾:)(或者我不喜欢它,选择您喜欢的方法)

首先选择文本框和按钮,然后是显示结果的div

<!-- HTML -->
<input type="text" name="query" />
<input type="button" name="search" value="search" />
<div id="results"></div>

 ...

然后,

// Javascript
$('input[name="search"]').click(function(e) {
    $.getJSON(
        'http://tapirgo.com/api/1/search.json?token=' 
             + 'PUT_YOUR_TOKEN_HERE' 
             + '&query=' 
             + $('input[name="query"]').val()
             + '&callback=?', 
        function(data) {
            $('#results').empty();
            $.each(data, function(key, val) {
                $('#results').append('<div class="result"><h3><a href="'
                                     + val.link + '">' 
                                     + val.title + '</a></h3><p>' 
                                     + val.summary + '</p></div>');
            });
        }
    );
});

答案 1 :(得分:0)

我认为Tapir不再受支持。我已经使用Jquery实现了静态搜索机制myself。您可以重复使用here

中的代码