0
我有這個Twitter小工具,工作得很好(很容易定製),但我有一個問題。我只想發佈不到兩天的推文,但我無法弄清楚如何去做。所以在HTML,我有以下幾點:Twitter小工具 - 只發布不到兩天的推文
<ul id="twitter_update_list"></ul>
<script src="/assets/script_twitterwidget.js" type="text/javascript"></script>
<script src="http://twitter.com/statuses/user_timeline/YourTwitterProfile.json?callback=twitterCallback2&count=1" type="text/javascript"></script>
然後有JS:
function relative_time(time_value) {
var values = time_value.split(" ");
time_value = values[1] + " " + values[2] + ", " + values[5] + " " + values[3];
var parsed_date = Date.parse(time_value);
var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
var delta = parseInt((relative_to.getTime() - parsed_date)/1000);
delta = delta + (relative_to.getTimezoneOffset() * 60);
return delta;
}
function absolute_time(created_at) {
var date = (created_at).substring(0,11);
var year = (created_at).substring(26);
var time = (created_at).substring(10,26);
var full = date + year + time;
var full = new Date(Date.parse(full)).toLocaleDateString();
return full;
}
if (delta < (48*60*60)) {
function twitterCallback2(twitters) {
var statusHTML = [];
for (var i=0; i<twitters.length; i++){
var username = twitters[i].user.screen_name;
var status = twitters[i].text.replace(/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g, function(url) {
return '<a href="'+url+'">'+url+'</a>';
}).replace(/\[email protected]([_a-z0-9]+)/ig, function(reply) {
return reply.charAt(0)+'<a href="http://twitter.com/'+reply.substring(1)+'">'+reply.substring(1)+'</a>';
});
statusHTML.push('<li><a target="_blank" style="font-size:100%" href="http://twitter.com/'+username+'/statuses/'+twitters[i].id+'">'+absolute_time(twitters[i].created_at)+':'+'</a>'+' '+'<span>'+status+'</span></li>');
}
document.getElementById('twitter_update_list').innerHTML = statusHTML.join('');
}
}
我加入的相對時間函數和if語句來嘗試後只有最近的鳴叫(它的偉大工程沒有那個代碼,但是顯示了最後一條推文是什麼,不管它多大)。然而,它並沒有做到這一點。謝謝您的幫助。