forked from wezm/wezm.net
43 lines
1.1 KiB
JavaScript
43 lines
1.1 KiB
JavaScript
jQuery(function() {
|
|
/*** Article Search ***/
|
|
function reset_search() {
|
|
$('#articles li').css({height: 'auto', opacity: 1.0});
|
|
}
|
|
|
|
function refresh_search(elem) {
|
|
var input = $(elem);
|
|
var value = input.val() || "";
|
|
|
|
var q = value.toLowerCase();
|
|
$('#articles li').each(function(i) {
|
|
var article = $(this);
|
|
var style;
|
|
if(article.text().toLowerCase().indexOf(q) >= 0) {
|
|
style = {height: 'show', opacity: 1.0}
|
|
}
|
|
else {
|
|
style = {height: 'hide', opacity: 0}
|
|
}
|
|
if(article.css('opacity') != style.opacity) article.animate(style, {queue: false, duration: 500});
|
|
});
|
|
}
|
|
|
|
var input = $('#search input');
|
|
if(input.length > 0) {
|
|
// Poll the field for its value while it has focus
|
|
var last_value;
|
|
input.focus(function() {
|
|
last_value = input.val();
|
|
input.everyTime('500ms', function() {
|
|
if(input.val() != last_value) {
|
|
refresh_search(input);
|
|
last_value = input.val();
|
|
}
|
|
});
|
|
}).blur(function() {
|
|
input.stopTime();
|
|
});
|
|
input.val('');
|
|
}
|
|
$('#search').show();
|
|
});
|