Skip to content

Instantly share code, notes, and snippets.

@mollifier
Created June 17, 2010 16:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mollifier/442344 to your computer and use it in GitHub Desktop.
Save mollifier/442344 to your computer and use it in GitHub Desktop.
jQuery Text Change Event plugin demo
// twitter incremental search
// jQuery Text Change Event plugin demo
//
// requires
// jQuery 1.4.2
// http://jquery.com/
// jQuery Text Change Event plugin
// http://www.zurb.com/playground/jquery-text-change-custom-event
$(function() {
function searchTwitter(query) {
var url = "http://search.twitter.com/search.json";
$.ajax({
url : url,
data : {
lang : "ja",
locale : "ja",
rpp : "15",
q : query
},
dataType : "jsonp",
timeout : 700,
success : function(data, dataType) {
if (data !== null && data.results !== null) {
showData(data.results);
}
}
});
}
function showData(results) {
var container = $("#search-result");
container.html("");
for (var i = 0; i < results.length; i++) {
var userUrl = "http://twitter.com/" + results[i].from_user;
var li = $("<li></li>").
append(
"<span>" +
"<a href='" + userUrl + "'>" +
"<img alt='profile_image' src='" + results[i].profile_image_url + "' />" +
"</a>" +
"</span>").
append(
"<span>" +
"<a href='" + userUrl + "'>" + results[i].from_user + "</a>" +
"</span>").
append("<span>" + results[i].text + "</span>");
container.append(li);
}
}
var timeout = null;
$("#query-area").bind("textchange", function() {
if (timeout) {
clearTimeout(timeout);
}
var query = $.trim($(this).val());
if (query === "") {
return;
}
timeout = setTimeout(function() {
searchTwitter(query);
}, 900);
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment