2

我成功安装了 TWITTER API jquery 脚本,但我不知道如何在不以 15 秒间隔刷新整个页面的情况下使用最新推文刷新脚本。是否可以使用 .load 或 refreshID 重新加载脚本?当函数重新加载时,我还可以包括淡入和淡出吗?

有人做过吗?

非常感谢。

埃里克

这是我的脚本:

<script src="/src/jquery/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="/src/jquery/jquery.jtwitter.min.js" type="text/javascript"></script>

<script type="text/javascript">
$(document).ready(function(){
    // Get latest 6 tweets by jQueryHowto
    $.jTwitter('eriksnet', 3, function(data){
        $('#posts').empty();
        $.each(data, function(i, post){
        $('#posts').append(
            '<div class="post">'
            +' <div class="txt">'
            // See output-demo.js file for details
            +    post.text
            +' </div>'
            +'</div>'
        );
    });
});
});
</script>



<div id="posts">Getting Erik's tweets...</div>
4

3 回答 3

1

尝试将您的 jTwitter 调用放在一个函数中并通过 setInterval 调用它

http://www.elated.com/articles/javascript-timers-with-settimeout-and-setinterval/

(大约在页面的一半处)

于 2010-07-16T15:25:01.107 回答
1

您将需要创建一个interval,以便您的应用程序每 15 秒轮询一次。Mozilla 的开发人员中心有一篇关于使用 setInterval 的基础知识的文章可以帮助您入门。

基本上,你会做这样的事情:

var f = function(){
    $.jTwitter('[user]',6,function(data){
        $('#posts').fadeOut('fast',function(){
            // build your html
            $(this).append(yourHtml).fadeIn();
        });
    });
};
$(document).ready(function(){ setInterval(f,15000); });
于 2010-07-16T15:27:42.260 回答
1

查看一个 jquery 插件 $.doTimeout,它使这变得非常简单。

http://benalman.com/projects/jquery-dotimeout-plugin/

<script type="text/javascript">
$(document).ready(function(){
    // Get latest 6 tweets by jQueryHowto
    $.doTimeout(15000, function() {
        $.jTwitter('eriksnet', 3, function(data){
            $('#posts').empty();
            $.each(data, function(i, post){
                $('#posts').append(
                    '<div class="post">'
                    +' <div class="txt">'
                    // See output-demo.js file for details
                    +    post.text
                    +' </div>'
                    +'</div>'
                );
            });
        });
        return true;
    });
});
</script>

只需确保在代码中包含 dotimeout js 文件即可。

于 2010-07-16T15:38:31.927 回答