我正在使用两个插件:
1)加载推文 2)分页这些推文
但需要为分页加载推文。我使用以下代码但不能正常工作
$(document).ready( function(){
$("#twittTime").tweet({
avatar_size: 32,
count: 20,
fetch: 20,
template: "{text} {time}",
filter: function(t){ return ! /^@\w+/.test(t["tweet_raw_text"]); },
username: "user",
loading_text: "Cargando Timeline ..."
});
$(".tweet_list").live({ load: function() {
$('.tweet_list').easyPaginate({
step:4,
alert: 'Hola'
});
},
});
});
答案 0 :(得分:3)
我是jquery.tweet.js
的维护者。在将推文呈现到页面中之后,窗口小部件会触发“已加载”事件,因此您只需执行此操作:
$(document).ready( function(){
$("#twittTime").tweet({
avatar_size: 32,
count: 20,
fetch: 20,
template: "{text} {time}",
filter: function(t){ return ! /^@\w+/.test(t["tweet_raw_text"]); },
username: "user",
loading_text: "Cargando Timeline ..."
}).bind("loaded", function() {
$('.tweet_list').easyPaginate({
step:4,
alert: 'Hola'
});
});
});
在捆绑的index.html
文件和tweet.seaofclouds.com页面上有一个例子。
答案 1 :(得分:1)
该插件应该有一个回调方法,告诉您何时完成。从那里开始运行$(".tweet_list")
功能。
编辑:
我在这里编辑,因为它更适合显示代码示例。如果您可以编辑JS插件,我建议您添加自己的回调...这真的很容易。
首先让我们在插件中添加complete()
方法。如果您打开tweet.js
,然后查找var s = $.extend({
,这就是为插件设置默认值的位置。在$.extend()
方法中,会有一个设置列表,一直到底部并添加:
粗略地排在第30位:
filter: function(tweet) {
return true;
},
/* Our callback method we are adding */
complete: function() {
return true;
}
然后我们需要在JSON AJAX请求结束时调用此函数。
在if (s.refresh_interval)
语句下面的第201行。然后在结束后}
添加s.complete();
你基本上完成的是在内容加载后调用完整的函数。我在本地测试它并且它正在工作,所以试一试,看看它是否能满足您的需求。
祝你好运!编辑2:我在Github上找到了这个插件并提交了这个功能,所以希望当/如果他们出来更新它会有这个,所以你不必每次都添加它。