Heim  >  Artikel  >  Backend-Entwicklung  >  javascript - 新手在项目中模仿sg的分页器. 求指点

javascript - 新手在项目中模仿sg的分页器. 求指点

WBOY
WBOYOriginal
2016-06-06 20:30:411242Durchsuche

<code><?php if($countPage > 1):?>
<div class="pagination-1 pagination">
    <div class="nextPrev-1">
        <ul style="overflow:hidden;">
            <?php if($currentPage > 1):?><li><a href="<?php%20echo%20query_url_build('p',%20%24prev)?>">上一页</a></li>
<?php endif;?>
            <?php if($currentPage >= 5 && $countPage >= $currentPage):?>
                <li><a href="<?php%20echo%20query_url_build('p',1)?>">1</a></li>
                <li>...</li>
            <?php endif;?>
            <?php $count = ($countPage < 5 ? $countPage : '') ? $countPage : 5;
                for($i = 0; $i < $count; $i++):
                    $index = 0; 
                if($currentPage/5 >= 1){
                    $index = (($currentPage-5)%3 == 0) ? ($currentPage-5)/3 + 1 : floor(($currentPage-5)/3 + 1);
                    }
                $number = 3 * $index + $i + 1;
                ?>
                <li class="<?php echo ((@$_GET['p'] == $number) || (empty($_GET['p'])&&$number==1)) ? 'currentPage' : '';?>">
                    <a href="<?php%20echo%20query_url_build('p',%20%24number)?>"><?php echo $number;?></a>
                </li>
            <?php if($number == $countPage){break;} endfor;?>
            <?php if($countPage !== (int)$number):?><li><a>...</a></li>
<?php endif;?>
            <li><a href="<?php%20echo%20query_url_build('p',%20%24next)?>">下一页</a></li>
            <li><a href="<?php%20echo%20query_url_build('p',%20%24countPage)?>">末页</a></li>
        </ul>
    </div>
</div>
<?php endif;?>
</code>

我只拿到了四条数据,当前页,总页,上一页,下一页;
有没有别的写法 , 我想我这种很低劣吧

回复内容:

<code><?php if($countPage > 1):?>
<div class="pagination-1 pagination">
    <div class="nextPrev-1">
        <ul style="overflow:hidden;">
            <?php if($currentPage > 1):?><li><a href="<?php%20echo%20query_url_build('p',%20%24prev)?>">上一页</a></li>
<?php endif;?>
            <?php if($currentPage >= 5 && $countPage >= $currentPage):?>
                <li><a href="<?php%20echo%20query_url_build('p',1)?>">1</a></li>
                <li>...</li>
            <?php endif;?>
            <?php $count = ($countPage < 5 ? $countPage : '') ? $countPage : 5;
                for($i = 0; $i < $count; $i++):
                    $index = 0; 
                if($currentPage/5 >= 1){
                    $index = (($currentPage-5)%3 == 0) ? ($currentPage-5)/3 + 1 : floor(($currentPage-5)/3 + 1);
                    }
                $number = 3 * $index + $i + 1;
                ?>
                <li class="<?php echo ((@$_GET['p'] == $number) || (empty($_GET['p'])&&$number==1)) ? 'currentPage' : '';?>">
                    <a href="<?php%20echo%20query_url_build('p',%20%24number)?>"><?php echo $number;?></a>
                </li>
            <?php if($number == $countPage){break;} endfor;?>
            <?php if($countPage !== (int)$number):?><li><a>...</a></li>
<?php endif;?>
            <li><a href="<?php%20echo%20query_url_build('p',%20%24next)?>">下一页</a></li>
            <li><a href="<?php%20echo%20query_url_build('p',%20%24countPage)?>">末页</a></li>
        </ul>
    </div>
</div>
<?php endif;?>
</code>

我只拿到了四条数据,当前页,总页,上一页,下一页;
有没有别的写法 , 我想我这种很低劣吧

使用Laravel做分页的输出,可以一行代码搞定,很优雅!具体参照它的API

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn