Jquery 无限滚动:Chrome和x2B中的双内容;不在IE工作
下面的代码按照Firefox19.0的预期工作。该脚本从数据库加载随机文章 它在Internet Explorer中重复加载相同的内容,在Chrome中加载双重+不同的内容Jquery 无限滚动:Chrome和x2B中的双内容;不在IE工作,jquery,ajax,infinite-scroll,Jquery,Ajax,Infinite Scroll,下面的代码按照Firefox19.0的预期工作。该脚本从数据库加载随机文章 它在Internet Explorer中重复加载相同的内容,在Chrome中加载双重+不同的内容 <script type="text/javascript"> $(window).scroll(function() { if($(window).scrollTop() == $(document).height() - $(window).height()) { $('div#loadmoreajaxlo
<script type="text/javascript">
$(window).scroll(function()
{
if($(window).scrollTop() == $(document).height() - $(window).height())
{
$('div#loadmoreajaxloader').show();
$.ajax({
url: "loadmore.php",
success: function(html)
{
if(html)
{
$("#wrapper").append(html);
$('div#loadmoreajaxloader').hide();
}else
{
$('div#loadmoreajaxloader').html('<center>No more posts to show.</center>');
}
}
});
}
});
</script>
$(窗口)。滚动(函数()
{
if($(窗口).scrollTop()==$(文档).height()-$(窗口).height())
{
$('div#loadmoreajaxloader').show();
$.ajax({
url:“loadmore.php”,
成功:函数(html)
{
如果(html)
{
$(“#包装器”).append(html);
$('div#loadmoreajaxloader').hide();
}否则
{
$('div#loadmoreajaxloader').html('不再显示帖子');
}
}
});
}
});
这里是loadmore.php
<?php
include('db.php');
$stmt = $db->prepare("SELECT * FROM db ORDER BY RAND() DESC LIMIT 9");
if($stmt->execute()){
while ($row = $stmt->fetch()) {
echo'
content here
';}}
?>
$limit=9;
$limit_offset = $limit*$_GET['offset'];
$stmt = $db->prepare("SELECT * FROM db ORDER BY RAND() DESC LIMIT :limit OFFSET :offset");
$stmt->bindValue(':limit', $limit, PDO::PARAM_INT);
$stmt->bindValue(':offset', $limit_offset, PDO::PARAM_INT);
我猜您总是得到相同的9个元素,因为您的MySQL查询没有偏移量 尝试添加偏移,如下所示: 在loadmore.php上
<?php
include('db.php');
$stmt = $db->prepare("SELECT * FROM db ORDER BY RAND() DESC LIMIT 9");
if($stmt->execute()){
while ($row = $stmt->fetch()) {
echo'
content here
';}}
?>
$limit=9;
$limit_offset = $limit*$_GET['offset'];
$stmt = $db->prepare("SELECT * FROM db ORDER BY RAND() DESC LIMIT :limit OFFSET :offset");
$stmt->bindValue(':limit', $limit, PDO::PARAM_INT);
$stmt->bindValue(':offset', $limit_offset, PDO::PARAM_INT);
在JavaScript代码上:
<script type="text/javascript">
var offset = 0;
var偏移=0;
$.ajax({
url:“loadmore.php”,
数据:{offset:offset}
成功:函数(html){
如果(html){
offset++;
$(“#包装器”).append(html);
$('div#loadmoreajaxloader').hide();
}否则{
$('div#loadmoreajaxloader').html('不再显示帖子');
}
}
});
我刚刚注意到它在Firefox和Chrome中都能完美运行。这是一个IE问题。我尝试了你的修复,但IE仍显示相同的内容。事实上,当我在IE中重新加载页面时,我应该看到不同的内容,但我看到的是相同的。奇怪的我想是缓存问题,我不知道。也许如果你在jsfiddle.net中发布一个代码示例,我可以帮你更多。。。