1 | jq(document).ready(function(e) { |
---|
2 | var prev_link = jq('.prevlink'); |
---|
3 | var next_link = jq('.nextlink'); |
---|
4 | var nav_links = jq('.navlink'); |
---|
5 | var batch_size = 4; |
---|
6 | batch_size = nav_links.size() > batch_size ? batch_size : nav_links.size(); |
---|
7 | |
---|
8 | var hideNavigation = function (){ |
---|
9 | jq.each(nav_links, function(index, link){ |
---|
10 | jq(link).hide(); |
---|
11 | }); |
---|
12 | }; |
---|
13 | |
---|
14 | var showPageByIndex = function(index){ |
---|
15 | jq('dd[class*=page]').hide(); |
---|
16 | jq('dd.page-'+(index)).show(); |
---|
17 | }; |
---|
18 | |
---|
19 | var bind_prev_handler = function(link, index){ |
---|
20 | if (index == 0) { |
---|
21 | jq(link).hide(); |
---|
22 | } |
---|
23 | jq(link).unbind(); |
---|
24 | jq(link).click(function(e) { |
---|
25 | if (!(index % batch_size)) { |
---|
26 | hideNavigation(); |
---|
27 | for (i=1;i<=batch_size;i++){ |
---|
28 | jq(nav_links[index-i]).show(); |
---|
29 | } |
---|
30 | } |
---|
31 | nav_link_handler(index-1); |
---|
32 | }); |
---|
33 | }; |
---|
34 | var bind_next_handler = function(link, index){ |
---|
35 | if (index == nav_links.size()-1) { |
---|
36 | jq(link).hide(); |
---|
37 | } |
---|
38 | jq(link).unbind(); |
---|
39 | jq(link).click(function(e) { |
---|
40 | if (!((index+1) % batch_size)) { |
---|
41 | hideNavigation(); |
---|
42 | for (i=1;i<=batch_size;i++){ |
---|
43 | if (i+index<nav_links.size()){ |
---|
44 | jq(nav_links[i+index]).show(); |
---|
45 | } |
---|
46 | } |
---|
47 | } |
---|
48 | nav_link_handler(index+1); |
---|
49 | }); |
---|
50 | }; |
---|
51 | var nav_link_handler = function(index){ |
---|
52 | if (index > 0) { |
---|
53 | prev_link.show(); |
---|
54 | bind_prev_handler(prev_link, index); |
---|
55 | } |
---|
56 | else { |
---|
57 | prev_link.hide(); |
---|
58 | } |
---|
59 | if (index < nav_links.size()-1) { |
---|
60 | next_link.show(); |
---|
61 | bind_next_handler(next_link, index); |
---|
62 | } |
---|
63 | else { |
---|
64 | next_link.hide(); |
---|
65 | } |
---|
66 | showPageByIndex(index); |
---|
67 | for (i=0;i<nav_links.size();i++){ |
---|
68 | if (i == index) { |
---|
69 | jq(nav_links[i]).addClass('selected'); |
---|
70 | } |
---|
71 | else{ |
---|
72 | jq(nav_links[i]).removeClass('selected'); |
---|
73 | } |
---|
74 | } |
---|
75 | } |
---|
76 | var initialize_navigation = function(){ |
---|
77 | hideNavigation(); |
---|
78 | for (i=0; i<batch_size;i++){ |
---|
79 | jq(nav_links[i]).show(); |
---|
80 | } |
---|
81 | showPageByIndex(0); |
---|
82 | bind_prev_handler(prev_link, 0); |
---|
83 | bind_next_handler(next_link, 0); |
---|
84 | jq.each(nav_links, function(index, link) { |
---|
85 | jq(link).unbind(); |
---|
86 | jq(link).click(function(e) { |
---|
87 | nav_link_handler(index); |
---|
88 | }); |
---|
89 | }); |
---|
90 | }; |
---|
91 | |
---|
92 | initialize_navigation(); |
---|
93 | |
---|
94 | }); |
---|