我可以在滚动加载时使用更多按钮将延迟加载转换为以下延迟加载吗?
function openFromButton(lastLoadedIndex) {
lastLoadedIndex = (typeof(lastLoadedIndex)=='undefined') ? '' : lastLoadedIndex;
jQuery.get('liste.asp?from_item='+ lastLoadedIndex +'¶m='+(new Date()).getTime(), function(data) {
//alert(data);
jQuery("#liste_body").append(data);
});
这是我到目前为止所做的,它工作正常,但问题是当我垂直或水平滚动时它会加载。我怎样才能让它在垂直滚动上工作?
function addEvent( obj, type, fn ) {
if ( obj.attachEvent ) {
obj['e'+type+fn] = fn;
obj[type+fn] = function(){obj['e'+type+fn]( window.event );}
obj.attachEvent( 'on'+type, obj[type+fn] );
} else
obj.addEventListener( type, fn, false );
}
addEvent(window, 'scroll', function(event) {
openFromButton();
});
答案 0 :(得分:2)
这是适用于我的解决方案,在chrome,firefox和IE上进行了测试
var lastScrollTop = 0;
$(window).scroll(function(event){
var st = $(this).scrollTop();
if (st > lastScrollTop){
Load()
} else {
}
lastScrollTop = st;
});
编辑: 注意$(this).scrollTop();没有在IE 8上工作,为了使它工作,我用document.body.scrollTop替换它