chapter.js 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252
  1. // JavaScript Document
  2. //页面样式
  3. var cs = {
  4. f: '2',
  5. l: '1',
  6. b: '2',
  7. d: '1'
  8. };
  9. var fRead = {
  10. //截取字符串 sname参数名 smark分隔符
  11. getQueryString: function (sname, str, smark) {
  12. if (str.length > 0) {
  13. var c_start = str.indexOf(sname + "=");
  14. if (c_start != -1) {
  15. c_start = c_start + sname.length + 1;
  16. var c_end = str.indexOf(smark, c_start);
  17. if (c_end == -1) c_end = str.length;
  18. return unescape(str.substring(c_start, c_end));
  19. }
  20. }
  21. return "";
  22. },
  23. //consolelog
  24. consolelog: function () {
  25. var slog = '';
  26. for (var i = 0; i < arguments.length; i++) {
  27. slog += arguments[i] + '---→';
  28. }
  29. console.log(slog);
  30. },
  31. //json串转换为json对象
  32. jsonparse: function (jstr) {
  33. if (typeof jstr == 'string') {
  34. return JSON.parse(jstr);
  35. } else {
  36. fRead.consolelog('jsonparse', 'not string');
  37. return jstr;
  38. }
  39. },
  40. //json对象转换为json串
  41. jsonstringify: function (jobj) {
  42. if (typeof jobj == 'object') {
  43. return JSON.stringify(jobj);
  44. } else {
  45. fRead.consolelog('jsonparse', 'not object');
  46. return jobj;
  47. }
  48. },
  49. //read 主题字号定义
  50. settheme: function (otheme) {
  51. var nScrollTop = $(window).scrollTop();
  52. var nTextH = $('.read_body').height();
  53. if (otheme) {
  54. oJson = otheme;
  55. }
  56. $('html,body').attr('class', oJson.bookBg.aAookBg[oJson.bookBg.selectVal]);
  57. if (oJson.bookNight) {
  58. $('html,body').addClass('read_theme_5');
  59. } else {
  60. $('html,body').removeClass('read_theme_5');
  61. }
  62. $('.m_f_input_range').val(oJson.fontSize);
  63. $('.m_f_font_rage span').attr('class', 'm_f_font_left_' + oJson.fontSize);
  64. $('.read_body').attr('class', 'read_body read_body_fontsize_' + oJson.fontSize)
  65. nTextH = $('.read_body').height() / nTextH;
  66. $(window).scrollTop(nTextH * nScrollTop);
  67. $('.m_f_set_bg_li').eq(oJson.bookBg.selectVal).addClass('m_f_set_bg_elect').siblings('.m_f_set_bg_li').removeClass('m_f_set_bg_elect');
  68. $.fn.cookie('contentJson', fRead.jsonstringify(oJson), {expires: 30, path: '/'});
  69. }
  70. };
  71. //获取当前年月日
  72. function getyearday() {
  73. var sdate = new Date();
  74. var year = sdate.getYear();
  75. var month = sdate.getMonth() + 1;
  76. var day = sdate.getDate();
  77. if (month < 10) {
  78. month = '0' + month;
  79. }
  80. if (day < 10) {
  81. day = '0' + day;
  82. }
  83. return '' + (1900 + year) + month + day;
  84. }
  85. $(function () {
  86. var ocs = $.fn.cookie('cs');
  87. if (ocs) {
  88. if (ocs.l == 1) {
  89. $('.ocs span').addClass('read_reverse_sequence').text('倒序');
  90. } else {
  91. $('.ocs span').removeClass('read_reverse_sequence').text('正序');
  92. }
  93. }
  94. //签到
  95. //var user_id = $.fn.cookie('user_id');
  96. //var sign = $.fn.cookie(user_id + getyearday());
  97. //if (user_id && sign != 1) {
  98. // $.ajax({
  99. // type: 'post',
  100. // url: '/api/user/sign',
  101. // timeout: 10000,
  102. // cache: false,
  103. // data: {},
  104. // success: function (data) {
  105. // if (data.err == 0) {
  106. // consoleMain('签到成功 送' + data.kandian + '书币');
  107. // }
  108. // },
  109. // error: function () {
  110. //
  111. // }
  112. // });
  113. //}
  114. //目录正序倒序
  115. $('.read_catalog_list').on('click', '.read_catalog_tit span', function () {
  116. var oCatalogJson = $.fn.cookie('cs');
  117. var $li = $('.read_catalog_ul li');
  118. var $ul = $('<ul></ul>');
  119. if (oCatalogJson) {
  120. oCatalogJson = fRead.jsonparse(oCatalogJson);
  121. } else {
  122. oCatalogJson = cs;
  123. }
  124. if (oCatalogJson.l == 1) {
  125. oCatalogJson.l = 2;
  126. $('.read_catalog_tit span').addClass('read_reverse_sequence').text('倒序');
  127. } else {
  128. oCatalogJson.l = 1;
  129. $('.read_catalog_tit span').removeClass('read_reverse_sequence').text('正序');
  130. }
  131. for (var i = $li.length - 1; i >= 0; i--) {
  132. $ul.append($li.eq(i));
  133. }
  134. $('.read_catalog_ul').html('');
  135. $('.read_catalog_ul').html($ul.html());
  136. $.fn.cookie('cs', fRead.jsonstringify(oCatalogJson), {expires: 30, path: '/'});
  137. });
  138. //显示目录
  139. $('.m_f_catalog').click(function () {
  140. // $('.read_catalog_box').addClass('read_catalog_show');
  141. });
  142. //弹出菜单
  143. $('.menu_evocation_box strong,.op_menu').click(function () {
  144. $('.menu_box').show();
  145. });
  146. //关闭菜单
  147. $('.menu_box i').click(function () {
  148. $('.m_f_set_box').removeClass('menu_set_show');
  149. $('.menu_hide').hide();
  150. });
  151. //设置
  152. $('.m_f_set').click(function () {
  153. $('.m_f_set_box').toggleClass('menu_set_show');
  154. });
  155. //字体大小
  156. $('.m_f_set_font_main .m_f_set_bg_li').click(function () {
  157. var $this = $(this);
  158. var oCatalogJson = $.fn.cookie('cs');
  159. var nIndex = $this.index();
  160. if (oCatalogJson) {
  161. oCatalogJson = fRead.jsonparse(oCatalogJson);
  162. } else {
  163. oCatalogJson = cs;
  164. }
  165. oCatalogJson.f = nIndex;
  166. $('.read_body').attr('class', 'read_body read_body_fontsize_' + nIndex);
  167. $this.addClass('m_f_set_bg_elect').siblings('.m_f_set_bg_li').removeClass('m_f_set_bg_elect');
  168. $.fn.cookie('cs', fRead.jsonstringify(oCatalogJson), {expires: 30, path: '/'});
  169. });
  170. //页面主题背景
  171. $('.m_f_set_bg_main .m_f_set_bg_li').click(function () {
  172. var $this = $(this);
  173. var oCatalogJson = $.fn.cookie('cs');
  174. var nIndex = $this.index();
  175. if (oCatalogJson) {
  176. oCatalogJson = fRead.jsonparse(oCatalogJson);
  177. } else {
  178. oCatalogJson = cs;
  179. }
  180. oCatalogJson.b = nIndex;
  181. oCatalogJson.d = 1;
  182. $('html,body').attr('class', 'read_theme_' + nIndex);
  183. $this.addClass('m_f_set_bg_elect').siblings('.m_f_set_bg_li').removeClass('m_f_set_bg_elect');
  184. $.fn.cookie('cs', fRead.jsonstringify(oCatalogJson), {expires: 30, path: '/'});
  185. });
  186. //白天夜间
  187. $('.m_f_night_day').click(function () {
  188. var oCatalogJson = $.fn.cookie('cs');
  189. if (oCatalogJson) {
  190. oCatalogJson = fRead.jsonparse(oCatalogJson);
  191. } else {
  192. oCatalogJson = cs;
  193. }
  194. if (oCatalogJson.d == 1) {
  195. $('html,body').addClass('read_theme_5');
  196. oCatalogJson.d = 2;
  197. } else {
  198. $('html,body').removeClass('read_theme_5');
  199. oCatalogJson.d = 1;
  200. }
  201. $.fn.cookie('cs', fRead.jsonstringify(oCatalogJson), {expires: 30, path: '/'});
  202. });
  203. //关闭目录
  204. $('.read_catalog_box i').click(function () {
  205. $('.read_catalog_box').removeClass('read_catalog_show');
  206. });
  207. //收藏本书
  208. $('.read_other_but_r').click(function () {
  209. $('#fiexd_ewm_box').show();
  210. });
  211. //收藏本书
  212. $(document).on('click', '.gzewm', function (e) {
  213. var stiao = $.fn.cookie('tiao');
  214. if (stiao != 2) {
  215. $('#fiexd_ewm_box').show();
  216. e.stopPropagation();
  217. $.fn.cookie('tiao', 2, {expires: 1, path: '/'});
  218. return false;
  219. }
  220. });
  221. //关闭弹窗
  222. $('.f_main_cloes,.f_main_over,.f_main_cloes_2').click(function () {
  223. $('.fiexd_ewm_box').hide();
  224. });
  225. //编辑最近阅读
  226. $(document).on('click', '.r_img_list_edit a', function (e) {
  227. e.stopPropagation();
  228. return false;
  229. });
  230. });