/[jquery]/no_pager/no_pager.js
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Annotation of /no_pager/no_pager.js

Parent Directory Parent Directory | Revision Log Revision Log


Revision 30 - (hide annotations)
Fri Aug 18 11:54:32 2006 UTC (17 years, 8 months ago) by dpavlin
File MIME type: application/javascript
File size: 2003 byte(s)
beginning of jquery logging plugin
1 dpavlin 2 /*
2     no pager, as seen at
3     http://www.humanized.com/weblog/2006/04/28/reading_humanized/
4 dpavlin 11 but using jquery
5    
6     2006-08-16 Dobrica Pavlinusic <dpavlin@rot13.org>
7 dpavlin 2 */
8    
9 dpavlin 11 var preloadDistance = 1000;
10     var isUpdating = false;
11 dpavlin 18 var isMouseDown = false;
12 dpavlin 11 var checker;
13 dpavlin 15 var v;
14     var cookie = 'no_pager';
15 dpavlin 11
16     function load_page() {
17 dpavlin 15 setCookie(cookie+"_height", getScrollHeight() );
18     setCookie(cookie+"_scroll", getScrollHeight() - _getWindowHeight() );
19 dpavlin 2
20 dpavlin 11 if ( isUpdating == true
21 dpavlin 18 || isMouseDown == true
22 dpavlin 11 || getPageHeight() - getScrollHeight() > preloadDistance
23 dpavlin 15 || v.page >= v.max_page
24 dpavlin 11 ) return;
25 dpavlin 2
26 dpavlin 15 v.page++;
27 dpavlin 2
28 dpavlin 30 $.log.info(
29     'get page: ' + v.page,
30     'search: ' + v.search,
31     'PageHeight:' + getPageHeight(),
32     'ScrollHeight:' + getScrollHeight()
33 dpavlin 15 );
34 dpavlin 2
35 dpavlin 15 setCookie( cookie+'_page', v.page );
36 dpavlin 11 isUpdating = true;
37 dpavlin 2
38 dpavlin 11 $('#status').html(
39 dpavlin 15 'Loading page '+ v.page + '...'
40 dpavlin 11 );
41 dpavlin 2
42 dpavlin 11 $.get(
43     "index.cgi/snippet",
44     {
45 dpavlin 15 page: v.page,
46 dpavlin 16 search: v.search
47 dpavlin 11 },
48     function ( response ) {
49    
50 dpavlin 18 $('#next_page').html( response );
51 dpavlin 9
52 dpavlin 15 eval( 'v=' + $('#json').val() );
53    
54 dpavlin 11 isUpdating = false;
55 dpavlin 15 $('#status').html( v.status );
56 dpavlin 11 }
57     );
58 dpavlin 9
59 dpavlin 2
60     }
61    
62 dpavlin 11 /*
63     bind events and init no_pager
64     */
65 dpavlin 2
66 dpavlin 11 $(document).ready( function() {
67 dpavlin 2
68 dpavlin 30 $.log.info('no_page binding events');
69 dpavlin 2
70 dpavlin 15 eval( 'v=' + $('#json').val() );
71 dpavlin 2
72 dpavlin 15 var cookie_id = getCookie(cookie+'_id') || 0;
73 dpavlin 11
74 dpavlin 30 $.log.debug("Page ID:" + v.id);
75     $.log.debug("Page Cookie:" + cookie_id);
76 dpavlin 15
77 dpavlin 2 var fromBackButton = false;
78 dpavlin 15 if ( cookie_id == v.id ) {
79 dpavlin 11 fromBackButton = true;
80     } else {
81 dpavlin 15 setCookie(cookie+'_id', v.id);
82 dpavlin 11 }
83 dpavlin 2
84 dpavlin 30 $.log.debug("from Back button? " + fromBackButton);
85 dpavlin 15 if ( fromBackButton ) {
86 dpavlin 30 $.log.info( 'Load ' + getCookie(cookie+'_page') + ' pages');
87     $.log.debug( 'Scroll to:' + getCookie(cookie+'_scroll') );
88 dpavlin 15 $('#spacer').height( getCookie(cookie+'_height')+"px" );
89     scroll( 0, getCookie(cookie+'_scroll') );
90 dpavlin 2 }
91    
92 dpavlin 18 $(window).mousedown( function () {
93     isMouseDown = true;
94     });
95     $(window).mouseup( function () {
96     isMouseDown = false;
97     });
98 dpavlin 15
99     checker = setInterval(function () {
100     load_page();
101     }, 100);
102    
103    
104 dpavlin 11 });
105 dpavlin 2

  ViewVC Help
Powered by ViewVC 1.1.26