1

以下のタンブラーテーマの作成はほぼ完了しました。テーマは無限スクロールプラグインを使用しており、これはフラッシュを含まない投稿(写真、テキストなど)で正常に機能します。ビデオとオーディオの投稿はフラッシュを使用し、無限スクロールがさらに投稿をロードすると、フラッシュ投稿にはロードされません。理由がわからないのですが、締め切りが迫っていますので、誰か助けていただけませんか?

http://penguinenglishlibrary.tumblr.com/

4

2 に答える 2

5

投稿をループしてtumblrapiを呼び出し、オーディオ投稿の埋め込みコードを取得する必要がありました。

私はコードを以下に入れました。うまくいけば、それが誰かを助けるでしょう:

  1. tumblrテーマに次のhtmlコードがあります:

    {block:Posts}

    <div id="{PostID}" class="posts {block:Photo}photo-post{/block:Photo} {block:Video}video-post{/block:Video} {block:Audio}audio-post{/block:Audio} {block:Photoset}photoset-post{/block:Photoset}">
    
  2. 次に、石積みのコールバック(以下を参照)内に次のコードがあります。

    /* repair audio players*/
    $('.audioplayerinto').each(function(){
        var audioID = $(this).attr("id");
        var $audioPost = $(this);
        $.ajax({
            url: 'http://myblog.tumblr.com/api/read/json?id=' + audioID,
            dataType: 'jsonp',
            timeout: 50000,
            success: function(data){
    
                $audioPost.html(data.posts[0]["audio-player"]);
    
    
                /*
                $audioPost.append('\x3cdiv style=\x22background-color:white;height:30px\x22 class=\x22audio_player\x22\x3e' + data.posts[0]['audio-player'] +'\x3c/div\x3e');
                alert("It worked");
                */
            }
        }
    

コールバックコードは次のようになります。

if($content.infinitescroll) {

    $content.masonry({
        itemSelector: '.posts',
        //columnWidth: 235,
        isAnimated: true
    }),    
    $content.infinitescroll({
        navSelector    : 'div#pagination',  
        nextSelector   : 'div#pagination div#nextPage a', 
        itemSelector   : '.posts',
        loading: {
            finishedMsg: '',
            img: 'http://static.tumblr.com/dbek3sy/pX1lrx8xv/ajax-loader.gif'
        },
        bufferPx       : 500,
        debug          : false,
    },
    // call masonry as a callback.
    function( newElements ) {
于 2012-04-15T00:35:35.243 に答える
2

次のページに対してajax呼び出しが行われると、インラインスクリプトタグがリクエストから削除されます。したがって、フラッシュが機能しない理由。

.findメソッドは、プラグイン内で、暗黙的に.loadメソッドとコールバックフェーズの一部として使用されます。

jquery:.find()の後に<script>タグを保持します

あなたにとって最良の選択肢は、フラッシュビデオが機能するために必要なインラインJSを見て、JSコードを分離することです。これはもっともらしいようです。

于 2012-04-14T11:54:21.123 に答える