0

私は ajax ベースのページネーションを使用しています。マークアップはこちら

<div id="portfolio-thumbs">
    <ul id="portfolio-destaque">
        HERE GOES MY LOOP AND CONTENT , some LI's with thumbs and stuff   
    </ul>
</div>
<div id="pagi-container">
    <div id="paginar">
        <?php posts_nav_link(); ?> 
    </div>
</div>

レンダリングは次のように <?php posts_nav_link(); ?>なります。

<div id="pagi-container">
    <div id="paginar">
        <a href="http://localhost/paulo/page/2/" >next Page &raquo;</a>  
    </div>
</div>

次に、この jquery を使用してページネーション リンクを読み込みます。

$('#paginar > a').on('click',  function(e){
    e.preventDefault();
    var link = jQuery(this).attr('href');
    jQuery('#portfolio-thumbs').html('Loading...');
    jQuery('#portfolio-thumbs').load(link+' #portfolio-destaque');
    jQuery('#pagi-container').load(link+' #paginar');   
});

[次のページ] リンクをクリックすると、内部のコンテンツ#portfolio-thumbsがマークアップ OK で読み込まれます。唯一の違いは、#pagi-containerこれを読み込むことです。

<div id="pagi-container">
    <div id="paginar">
        <a href="http://localhost/paulo/">« Prev Page</a> — 
        <a href="http://localhost/paulo/page/3/">Next Page »</a>  
    </div>
</div>

この時点で、Jquery は機能しなくなりました。ページネーションリンクをクリックすると、ページ全体が読み込まれます....次のページでは、ページネーションリンクが1つだけ読み込まれますが、問題なく動作します。私の推測では、どういうわけか、私のjqueryは 1#paginar aでしか動作せず、複数のリンクがあると壊れます....しかし、よくわかりません...誰か何か考えがありますか?

4

1 に答える 1

3

の内容を変更しているためです。#paginarそのため、リンクのイベントがクリアされています。jquery のバージョンに応じて、代わりに.live()イベントを使用または追加できます。#pagi-container

$('#pagi-container').on('click','#paginar > a',function() {... }

于 2013-02-24T10:40:10.250 に答える