※ 引述《FIFA5566 (身高188体重75爱踢足球)》之铭言:
: 原PO 去年六月从高雄某国立科大 资管 学士毕业
: 毕业10天后剃光头 开始亲爱精诚报效国家
: 上礼拜刚退伍 于是开始翻翻104准备着手面试
: 我想找的工作是PHP programming,对这块比较有兴趣
: 大学专题用:PHP,MSSQL,jQuery撰写,hyper-v的机器上跑
: 透过facebook api来实现Open ID
: 同时有用一小部分的ADOMD.net FrameWork 完成5维cube,用来实现资料仓储的OLAP
: 专题目的为快速找到使用者过去所发表的动态、图片
: 并快速的管理、删除过去在FB上的资料,以及找出谁最关注你,关注你哪些动态的系统
: 专题最后有写出来,并且有拿到国科会大专生补助
: 专题PHP部分有用到的地方: 1.写Search engine
: 2.搭配jQuery用递回写类似Facebook的无限滚轮向下加载
: 3.query来query去
不好意思 单纯好奇 您的作品有做过:
2. jQuery用递回写类似Facebook的无限滚轮向下加载
因为小弟也自己写了一个类似的功能
想不透的是infinite scroll为什么要用递回写?
下面是我写的版本 没有需要递回阿= =?
$.fn.infinitescroll = function(options) {
var $me = this,
didScroll = false,
args = Array.prototype.slice.call(arguments, 1),
size = 'size',
start = 'start';
var defaults = {
url: undefined,
loader: '#loadmoreajaxloader',
timeout: 10000,
callback: function() {},
error: function() {},
noDataCallback: function() {},
data: {},
start: 0,
size: 10,
dataType: 'html',
method: 'POST'
};
var opts = $.extend(true, {}, defaults, options),
$loader = $(opts.loader);
$(window).scroll(function() {
didScroll = true;
});
var interId = setInterval(function() {
if(didScroll) {
didScroll = false;
if($(window).scrollTop() + $(window).height() >
$(document).height() - 100) {
$loader.show();
$.ajax({
url: opts.url + '?start=' + opts.start + '&size=' +
opts.size,
type: opts.method,
data: opts.data,
success: function(data) {
if(data) {
$me.append(data);
$loader.hide();
opts.start += opts.size;
opts.callback.apply($me.get(0), args);
} else {
$loader.html('<div class="intro ta-center">No data found.</div>');
opts.noDataCallback.apply($me.get(0), args);
clearInterval(interId);
}
},
error: function() {
opts.error.apply($me.get(0), args);
clearInterval(interId);
},
timeout: opts.timeout
});
}
}
}, 250);
}