jQuery AJAX脚本无法在Firefox中运行

时间:2012-07-10 16:41:34

标签: php jquery

我无法弄清楚为什么这个脚本在Firefox中不起作用。而且,即使我的ajax_loadmore.php输出为FALSE,它仍会进行AJAX调用(在Chrome中)。

var request;
$(window).scroll(function () {
   if ($(window).scrollTop() == $(document).height() - $(window).height() ) {
      var ID = $('.stbody:last').attr('id').match(/stbody(\d+)/)[1];
      $('#loader').show();

      if(request) {
        return
      }
      request = $.ajax({
        type: 'GET',
        url: "ajax_loadmore.php?lCom="+ID,
        success: function(result) {
            if(result!='FALSE') {
                $('#loader').hide();
                $('#moreComments').append(result);
                $(".oembed").oembed(null, {
                    embedMethod: "fill",
                    maxWidth: 700,
                    maxHeight: 600
                });
                request = null;
            } else {
                $('#loader').hide();
                $('#moreComments').html('<center><p>Slut på inlägg</p></center>');
                request = null;
            }
        }
      }); 
   }
});

ajax_loadmore.php代码:

<?php
if($_GET['lCom']) {
  include_once 'core/init.php';
  protect_page();
  include_once 'includes/db.php';
  include_once 'includes/functions.php';
  include_once 'includes/tolink.php';
  include_once 'includes/time_stamp.php';
  include_once 'session.php';

  $lCom = $_GET['lCom'];
  $Wall = new Wall_Updates();
  $updatesarray=$Wall->Updates_more($uid,$lCom);
  if(!empty($updatesarray)) {

    foreach($updatesarray as $data) {
      $msg_id=$data['msg_id'];
      $orimessage=$data['message'];
      $message=tolink(htmlspecialchars(nl2br($data['message'])));
      $time=$data['created'];
      $username=$data['username'];
      $uid=$data['uid_fk'];
      $face=get_profile_pic($uid,'small');
      $face2=get_profile_pic($session_user_id,'mini'); 
      $commentsarray=$Wall->Comments($msg_id);
      ?>

        //HTMLSTUFF HERE.. 

      <?php
      }
  } else { echo 'FALSE'; }
} else { die('du ska inte vara här..'); }

?>

2 个答案:

答案 0 :(得分:0)

我也遇到了同样的问题,我使用了以下链接中的脚本:

http://www.9lessons.info/2009/07/load-data-while-scroll-with-jquery-php.html

答案 1 :(得分:0)

现在似乎有用了。我使用jQuery在我的菜单到达顶部时添加一个粘性类。并且该菜单有位置:相对于它可能与窗口的高度混淆或者某些东西使得Firefox没有执行脚本,因为它没有到达底部。

当我改变位置时:在菜单容器上的相对位置:绝对它只是工作。

如果有人能够解释为何更详细,我会很高兴! (因为它在Chrome和IE中工作,我猜它在Firefox中是一个渲染问题)

感谢您的回复!