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');   
});

当我单击 Next Page 链接时,它会#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,当有超过 1 个链接时中断....但我不确定......有人知道吗?

4

1 回答 1

3

这是因为您正在更改 的内容#paginar,所以会发生链接上的事件被清除的情况。根据您的 jquery 版本,您可以使用.live()或将事件添加到#pagi-container

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

于 2013-02-24T10:40:10.250 回答