forked from GNUsocial/gnu-social
Fix infinite scroll to work on 1.0.x
add on_next_only configuration option
This commit is contained in:
parent
bd3eb331a8
commit
d9d9a10b6f
@ -40,6 +40,7 @@ class InfiniteScrollPlugin extends Plugin
|
|||||||
|
|
||||||
function onEndShowScripts($action)
|
function onEndShowScripts($action)
|
||||||
{
|
{
|
||||||
|
$action->inlineScript('var infinite_scroll_on_next_only = ' . ($this->on_next_only?'true':'false') . ';');
|
||||||
$action->script($this->path('jquery.infinitescroll.js'));
|
$action->script($this->path('jquery.infinitescroll.js'));
|
||||||
$action->script($this->path('infinitescroll.js'));
|
$action->script($this->path('infinitescroll.js'));
|
||||||
}
|
}
|
||||||
|
@ -3,7 +3,25 @@ When a user scrolls towards the bottom of the page, the next page of notices is
|
|||||||
automatically retrieved and appended. This means they never need to click "Next
|
automatically retrieved and appended. This means they never need to click "Next
|
||||||
Page", which dramatically increases stickiness.
|
Page", which dramatically increases stickiness.
|
||||||
|
|
||||||
|
Note that there is a configuration option to make it so that the plugin doesn't
|
||||||
|
trigger when the user approaches the bottom of the page, but instead triggers
|
||||||
|
when the "next" button is clicked.
|
||||||
|
|
||||||
Installation
|
Installation
|
||||||
============
|
============
|
||||||
Add "addPlugin('InfiniteScroll');" to the bottom of your config.php
|
Add "addPlugin('InfiniteScroll',
|
||||||
That's it!
|
array('setting'=>'value', 'setting2'=>'value2', ...);"
|
||||||
|
to the bottom of your config.php
|
||||||
|
|
||||||
|
Settings
|
||||||
|
========
|
||||||
|
on_next_only (false): trigger infinite scroll when the next button is clicked.
|
||||||
|
Note that this means you really don't have "infinite scrolling" as the trigger
|
||||||
|
is clicking, not scrolling.
|
||||||
|
|
||||||
|
Example
|
||||||
|
=======
|
||||||
|
addPlugin('InfiniteScroll', array(
|
||||||
|
'on_next_only'=>false
|
||||||
|
));
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
jQuery(document).ready(function($){
|
jQuery(document).ready(function($){
|
||||||
$('notices_primary').infinitescroll({
|
$('notices_primary').infinitescroll({
|
||||||
debug: false,
|
debug: false,
|
||||||
infiniteScroll : false,
|
infiniteScroll : !infinite_scroll_on_next_only,
|
||||||
nextSelector : 'body#public li.nav_next a,'+
|
nextSelector : 'body#public li.nav_next a,'+
|
||||||
'body#all li.nav_next a,'+
|
'body#all li.nav_next a,'+
|
||||||
'body#showstream li.nav_next a,'+
|
'body#showstream li.nav_next a,'+
|
||||||
@ -12,9 +12,9 @@ jQuery(document).ready(function($){
|
|||||||
loadingImg : $('address .url')[0].href+'plugins/InfiniteScroll/ajax-loader.gif',
|
loadingImg : $('address .url')[0].href+'plugins/InfiniteScroll/ajax-loader.gif',
|
||||||
text : "<em>Loading the next set of posts...</em>",
|
text : "<em>Loading the next set of posts...</em>",
|
||||||
donetext : "<em>Congratulations, you\'ve reached the end of the Internet.</em>",
|
donetext : "<em>Congratulations, you\'ve reached the end of the Internet.</em>",
|
||||||
navSelector : ".pagination",
|
navSelector : "#pagination",
|
||||||
contentSelector : "#notices_primary ol.notices",
|
contentSelector : "#notices_primary ol.notices",
|
||||||
itemSelector : "#notices_primary ol.notices li"
|
itemSelector : "#notices_primary ol.notices > li"
|
||||||
},function(){
|
},function(){
|
||||||
// Reply button and attachment magic need to be set up
|
// Reply button and attachment magic need to be set up
|
||||||
// for each new notice.
|
// for each new notice.
|
||||||
|
Loading…
Reference in New Issue
Block a user