Javascript 使用ajax动态检索twitter搜索提要

Javascript 使用ajax动态检索twitter搜索提要,javascript,jquery,ajax,json,Javascript,Jquery,Ajax,Json,很久以前,我使用JSON,并成功地从twitter和facebook获取哈希标记提要。但目前我只是能够得到饲料,但它没有被不断更新,这意味着它没有被动态更新。我想我需要ajax化它,但我不能这样做,因为我不知道ajax。下面是我用来获取twitter搜索源的代码 $(document).ready(function() { $("#Enter").click(function(event){ var searchTerm = $("#search").val() ;

很久以前,我使用JSON,并成功地从twitter和facebook获取哈希标记提要。但目前我只是能够得到饲料,但它没有被不断更新,这意味着它没有被动态更新。我想我需要ajax化它,但我不能这样做,因为我不知道ajax。下面是我用来获取twitter搜索源的代码

$(document).ready(function() 
   {    
   $("#Enter").click(function(event){ 
var searchTerm = $("#search").val()  ; 

var baseUrl = "http://search.twitter.com/search.json?q=%23";
$.getJSON(baseUrl + searchTerm + "&rpp=1500&callback=?", function(data) 
{
$("#tweets").empty(); 
if(data.results.length < 1) 
  $('#tweets').html("No results JOINEVENTUS"); 
$.each(data.results, function()
{
$('<div align="justify"></div>')
.hide()
.append('<hr> <img src="' + this.profile_image_url + '" width="40px" /> ')
.append('<span><a href="http://www.twitter.com/'
+ this.from_user + '">' + this.from_user 
+ '</a> ' + makeLink(this.text) + '</span>')
.appendTo('#tweets') 
.fadeIn(800); 
});
});
});
});

function makeLink(text) 
var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;   
return text.replace(exp,"<a href='$1'>$1</a>"); 
} 
$(文档).ready(函数()
{    
$(“#输入”)。单击(函数(事件){
var searchTerm=$(“#搜索”).val();
var baseUrl=”http://search.twitter.com/search.json?q=%23";
$.getJSON(baseUrl+searchTerm+“&rpp=1500&callback=?”,函数(数据)
{
$(“#tweets”).empty();
if(data.results.length<1)
$('#tweets').html(“无结果JOINEVENTUS”);
$.each(data.results,function()
{
$('')
.hide()
.append(“
”) .append(“”+makeLink(this.text)+“”) .appendTo(“#tweets”) .fadeIn(800); }); }); }); }); 函数makeLink(文本) var exp=/(\b(https?| ftp |文件):\/\/[-A-Z0-9+&@#\/%?=~~|!:,.;]*[-A-Z0-9+&@#\/%=~|]/ig; 返回文本。替换(exp,“”); }
下面的代码应该对您有所帮助。我所做的是将获取tweets的代码移动到一个函数中。然后每隔X秒调用此函数以更新该框。当用户输入新的搜索词并单击“回车”时,它将重置计时器

var fetchSeconds = 30; //Number of seconds between each update
var timeout; //The variable which holds the timeout
$(document).ready(function() {    
    $("#Enter").click(function(event){ 
        //Clear old timeout
        clearTimeout(timeout);
        //Fetch initial tweets
        fetchTweets();
    });
});

function fetchTweets() {
    //Setup to fetch every X seconds
    timeout = setTimeout('fetchTweets()',(fetchSeconds * 1000));
    var searchTerm = $("#search").val(); 
    var baseUrl = "http://search.twitter.com/search.json?q=%23";
    $.getJSON(baseUrl + searchTerm + "&rpp=1500&callback=?", function(data) {
        $("#tweets").empty(); 
        if (data.results.length < 1) {
            $('#tweets').html("No results JOINEVENTUS"); 
        }
        $.each(data.results, function() {
            $('<div align="justify"></div>').hide()
                                            .append('<hr> <img src="' + this.profile_image_url + '" width="40px" /> ')
                                            .append('<span><a href="http://www.twitter.com/'+ this.from_user + '">' + this.from_user + '</a> ' + makeLink(this.text) + '</span>')
                                            .appendTo('#tweets')
                                            .fadeIn(800); 
        });
    });
}

function makeLink(text) {
    var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;   
    return text.replace(exp,"<a href='$1'>$1</a>"); 
}
var fetchSeconds=30//每次更新之间的秒数
var超时//保存超时的变量
$(文档).ready(函数(){
$(“#输入”)。单击(函数(事件){
//清除旧超时
clearTimeout(超时);
//获取初始推文
获取tweets();
});
});
函数fetchTweets(){
//设置为每X秒提取一次
timeout=setTimeout('fetchTweets()',(fetchSeconds*1000));
var searchTerm=$(“#搜索”).val();
var baseUrl=”http://search.twitter.com/search.json?q=%23";
$.getJSON(baseUrl+searchTerm+“&rpp=1500&callback=?”,函数(数据){
$(“#tweets”).empty();
if(data.results.length<1){
$('#tweets').html(“无结果JOINEVENTUS”);
}
$.each(data.results,function(){
$('').hide()
.append(“
”) .append(“”+makeLink(this.text)+“”) .appendTo(“#tweets”) .fadeIn(800); }); }); } 函数makeLink(文本){ var exp=/(\b(https?| ftp |文件):\/\/[-A-Z0-9+&@#\/%?=~~|!:,.;]*[-A-Z0-9+&@#\/%=~|]/ig; 返回文本。替换(exp,“”); }

希望这对您有所帮助

请正确缩进您的代码,以便于我们帮助您。谢谢:)我已经编辑了代码,因为我误解了这个问题,但希望这就是你所要做的。感谢你的帮助,实际上推特并没有动态更新,我想做的正是twitter widget在wordpress或其他博客上所做的事情,它能在短时间内反映推文。我仍在想办法。我想做的正是推文所做的,推文是动态检索的
http://twitter.com/about/resources/widgets/widget_search