为什么我的JS / JQuery代码只能在Web浏览器的控制台中运行?

时间:2012-12-17 09:41:55

标签: javascript jquery html pagination scroll

$(元素).scroll(function(){});当我将它放入js文件但是当我将它输入控制台(只是滚动函数)时,函数对我不起作用,它可以正常工作。

我正在尝试滚动分页。

我查看了我的其他js文件,我认为唯一可能有冲突的是另一个文件有$(文件).ready(function(){})但我很确定这是不是问题。我也使用Dropkick制作漂亮的下拉菜单,但我怀疑它是不是。

这是代码,几乎是逐字逐句。这是现在基本的,直到我能弄清楚如何加载它。

$('#main').scroll(function(){
    if(($('#main').prop('scrollHeight'))==
        ($('#main').scrollTop()+$(document).height()-10)){
        //^there's a strange 10px empty space that needs to be accounted for
        $('#loading').show();
        $('#main').css('overflow','hidden');
        addMore();
    }
});
$(document).ready(function(){
    addMore();
});
addmore.counter=0;
function addMore(){
    $.ajax({
    async: 'true',
    url: 'http://mywebsite.com/bc/get',
    type: 'post',
    data: ({'offset':(addmore.counter)}),
    success: function(data) {
        $('#scrollingpagination').append(data);
        $('#loading').hide();
        $('#main').css('overflow','scroll');
        addmore.counter++;
    }
    });
}

这是HTML(不是逐字,但相同的想法)

<!--I'm only including the "main" div that shows the content.-->
<div id='main'>
    <div id='scrollingpagination'></div>
    <div id='loading'></div>
</div>

谢谢大家,我真的很感激!

1 个答案:

答案 0 :(得分:0)

尝试保持

$('#main').scroll(function(){
            ......
}) 

document.ready内。我认为它是在dom准备好之前调用的