1

Twitter から取得したツイートを含む div を自動更新するコードは次のとおりです。

var twittercacheData;
var twitterdata = $('#bottom-bar').html();
var twitterauto_refresh = setInterval(
function ()
{
    $.ajax({
        url: 'twitter.php',
        type: 'POST',
        data: twitterdata,
        dataType: 'html',
        success: function(twitterdata) {
            if (twitterdata !== twittercacheData){
                //data has changed (or it's the first call), save new cache data and update div
                twittercacheData = twitterdata;
                $('#bottom-bar').fadeOut("slow").html(twitterdata).fadeIn("slow");
            }           
        }
    })
}, 60000); // check every minute - reasonable considering time it takes 5 tweets to scroll across

唯一のことは、twitter.php でこれを行うことです。

// initialise the marquee plugin so that we get a nice smooth scrolling effect
$('div.twitter marquee').marquee();

実際には、ツイートをプルしてマーキーに押し込み、Remy Shap rp のマーキー プラグインを初期化しています。div が更新されているため、最初の更新後にマーキー プラグインが初期化されていないと考えています。完全に動作し、firebug は次のように報告しています。

marqueeState is undefined

使用を検討しまし.live()たが、ユーザーの操作を必要としないものを考えられないため、使用するイベントの種類がわかりません。

何かご意見は?

4

3 に答える 3

1

プログラムでトリガーできるカスタム イベントが必要な場合は、jQuery が提供します

于 2011-09-24T01:58:40.480 に答える
1

livequeryプラグインを使用して、次のようにします。

$('div.twitter marquee').livequery(function() {
   $(this).marquee();
});

または、.live() でカスタム イベントを使用できます。

于 2011-09-23T17:11:29.443 に答える
1

window.onload = functionName を使用してみてください

于 2011-09-23T16:38:02.540 に答える