0

私はsoundcloudのカスタムjavascriptプラグインを使用してカスタムプレーヤーを作成しましたが、これまでのところすべてがうまく機能しています。カスタムプレーヤーは、ページに含めたいミックスまたは曲へのリンクを提供する単一のリンクで機能します。例:

<a href="http://soundcloud.com/matas/hobnotropic" class="sc-player">My new dub track</a> 

しかし、Ajaxを使用して最終ページで作業してページを動的にロードしているので、ページがロードされると、プレーヤー(ロードされたコンテンツ内にある)が消えます。

カスタムプレーヤーがデータを取得する方法に慣れていないため、Ajaxとpushstateを試すのはこれが初めてであり、プレイが引き続き機能するようにAjaxに追加する必要があるものを見つけようとしています。 。

これが私が使用しているajaxです:

    $(function(){
        var replacePage = function(url) {
            $.ajax({
                url: url,
                type: 'get',
                dataType: 'html',
                success: function(data){
                    var dom = $(data);
                    var title = dom.filter('title').text();
                    var html = dom.filter('#content').html();
                    $('title').text(title);
                    $('#content').html(html);
                }
            });
        }

        $('nav a').live('click', function(e){
            history.pushState(null, null, this.href);
            replacePage(this.href);
            e.preventDefault();
        });

        $(window).bind('popstate', function(){
            replacePage(location.pathname);
        });
    });
4

1 に答える 1

0

わかりました、これが答えです。もちろん、私はajax呼び出しの成功の中で、次のように呼び出し後にプレーヤーに再度電話をかける必要があります。

$('a.sc-player, div.sc-player').scPlayer();
于 2012-07-21T23:59:20.073 に答える