如何使用jQuery和PHP限制while循环中的结果

时间:2013-11-09 18:44:47

标签: javascript php jquery

我真的不知道怎么设置这个问题而不用太长时间,所以我会在这里解释它的厚度。

基本上我的代码是从另一台服务器上的目录中提取图像。我正在使用我在网上找到的jQuery分页脚本。该脚本可以工作,但只有在每个图像加载到页面上之后(有很多图像,所以加载需要一段时间)。

我想要完成的是基本上能够通过一次只显示36个结果来快速加载页面。我希望jQuery分页能够工作,但是更加理想的只是在向下滚动时加载。我已经尝试过使用一些不同的无尽滚动脚本,但由于某些原因它永远无法正常工作。

希望我能清楚地说明我要做的事情。

以下是该页面的链接:http://habbolicious.com/v2/testing.php

......这是代码:

    <head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.pages.js"></script>
<script type="text/javascript">
$(document).ready(function() {
    $("div.holder").jPages({
        containerID : "test",
        perPage: 36
      });
});
</script>
</head>

<div class="holder"></div>
<div id="test">

<?php
$url = "http://habbo.it/gamedata/external_flash_texts/0";
$data = file_get_contents($url);
$newlines = array("\n" ,"\r", "\r\n", ">", "<", "/");
$content = str_replace($newlines, "", html_entity_decode($data));

$Statushtml= '/badge_desc_(.+?)=/';
preg_match_all($Statushtml,$content,$Statusraw);
$badges = implode("-", $Statusraw[0]);
$badgevar = explode("=-badge_desc_", $badges);
$number = ($badgevar);
$badgevar2 = str_replace("=","",$badgevar);
$badgevar3 = str_replace("badge_desc_","",$badgevar2);
$number = count($badgevar3);
while ($number != 0) { ?> 

<script>
$("img").error(function () { 
    $(this).parent().css({display:"none"}); 
});
</script>

<?php

$number = $number - 1; ?>

<?php
$imageUrl = "http://images.habbo.it/c_images/album1584/$badgevar3[$number].gif";
echo '<div class="derpy" style="width:10%; height:70px; line-height:10px; overflow:hidden; border-radius:5px; background:#eaeaea; color:#585858; float:left; margin:5px; padding:10px; text-align:center;"><img class="lazy" src="' . $imageUrl . '" onerror="this.style.display=none" /><br/>' . $badgevar3[$number] . '</div>';
if(file_exists($imageUrl))
{

} else {

}
}
?>

<div style="clear:both;"></div>

</div>

1 个答案:

答案 0 :(得分:0)

在你的脚本中

: $ number = count( * *);

和'while'将$ number倒数到0。

如果你只需要36张图片,那么你需要第10行“$ number = 36;”而不是“$ number =($ badgevar);”