asp ajax统计源码,ASP jquery 实现Ajax动态“加载更多”的功能

(function( $ ){

var target = null;

var template = null;

var lock = false;

var variables = {

'last' : 0

}

var settings = {

'amount' : '4',

'address' : '',

'format' : 'json',

'template' : '.single_item',

'trigger' : '.get_more',

'scroll' : 'false',

'offset' : '100',

'spinner_code': ''

}

var methods = {

init : function(options){

return this.each(function(){

if(options){

$.extend(settings, options);

}

template = $(this).children(settings.template).wrap('

template.css('display','none')

$(this).append('

'+settings.spinner_code+'
')

$(this).children(settings.template).remove()

target = $(this);

if(settings.scroll == 'false'){

$(this).find(settings.trigger).bind('click.more',methods.get_data);

$(this).more('get_data');

}

else{

if($(this).height() <= $(this).attr('scrollHeight')){

target.more('get_data',settings.amount*2);

}

$(this).bind('scroll.more',methods.check_scroll);

}

})

},

check_scroll : function(){

if((target.scrollTop()+target.height()+parseInt(settings.offset)) >= target.attr('scrollHeight') && lock == false){

target.more('get_data');

}

},

debug : function(){

var debug_string = '';

$.each(variables, function(k,v){

debug_string += k+' : '+v+'\n';

})

alert(debug_string);

},

remove : function(){

target.children(settings.trigger).unbind('.more');

target.unbind('.more')

target.children(settings.trigger).remove();

},

add_elements : function(data){

//alert('adding elements')

var root = target

// alert(root.attr('id'))

var counter = 0;

if(data){

$(data).each(function(){

counter++

var t = template

$.each(this, function(key, value){

if(t.find('.'+key)) t.find('.'+key).html(value);

})

//t.attr('id', 'more_element_'+ (variables.last++))

if(settings.scroll == 'true'){

// root.append(t.html())

root.children('.more_loader_spinner').before(t.html())

}else{

// alert('...')

root.children(settings.trigger).before(t.html())

}

root.children(settings.template+':last').attr('id', 'more_element_'+ ((variables.last++)+1))

})

}

else methods.remove()

target.children('.more_loader_spinner').css('display','none');

if(counter < settings.amount) methods.remove()

},

get_data : function(){

// alert('getting data')

var ile;

lock = true;

target.children(".more_loader_spinner").css('display','block');

$(settings.trigger).css('display','none');

if(typeof(arguments[0]) == 'number') ile=arguments[0];

else {

ile = settings.amount;

}

$.post(settings.address, {

last : variables.last,

amount : ile

}, function(data){

$(settings.trigger).css('display','block')

methods.add_elements(data)

lock = false;

}, settings.format)

}

};

$.fn.more = function(method){

if(methods[method])

return methods[ method ].apply( this, Array.prototype.slice.call( arguments, 1 ));

else if(typeof method == 'object' || !method)

return methods.init.apply(this, arguments);

else $.error('Method ' + method +' does not exist!');

}

})(jQuery)



更多源码 | 好库简介 | 网站地图 | 帮助中心 | 版权说明

Copyright© 2009-2012 OKBASE.NET All Rights Reserved 好库网 版权所有

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值