[英]Why does some jquery code only work if it's at the end of my html-body section?
[英]Why does my JS/JQuery code only work in a web browser's console?
$(element).scroll(function(){}); 当我将其放入js文件时,该函数对我不起作用,但是当我将其输入到控制台中时(只是滚动功能),它就可以正常工作。
我正在尝试进行滚动分页。
我查看了我的其他js文件,我认为可能唯一矛盾的是另一个文件中有一个$(document).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>
谢谢大家,我真的很感激!
尝试保持
$('#main').scroll(function(){
......
})
在document.ready
内部。 我认为这是在dom准备好之前被调用的
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.