Reader.html 42 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015
  1. <!DOCTYPE html>
  2. <html ng-app="app">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no,minimal-ui">
  6. <meta name="format-detection" content="telephone=no">
  7. <link rel="stylesheet" href="css/reset.css">
  8. <style type="text/css">
  9. html {
  10. width: 100%;
  11. height: 100%;
  12. overflow-x: hidden;
  13. }
  14. body {
  15. text-align: left;
  16. width: 100%;
  17. -webkit-tap-highlight-color: rgba(0,0,0,.05);
  18. -webkit-touch-callout: none;
  19. -webkit-user-select: none;
  20. background: #e9dfc7;
  21. overflow: hidden;
  22. }
  23. .m-read-content {
  24. font-size: 14px;
  25. color: #555;
  26. line-height: 31px;
  27. padding: 15px;
  28. }
  29. .m-read-content h4 {
  30. font-size: 20px;
  31. color: #736357;
  32. border-bottom: solid 1px #736357;
  33. margin: 0 0 1em 0;
  34. letter-spacing: 2px;
  35. }
  36. .m-read-content p {
  37. text-indent: 2em;
  38. margin: 0.5em 0;
  39. text-align: justify;
  40. letter-spacing: 0px;
  41. line-height: 24px;
  42. }
  43. .artical-action-top {
  44. position: fixed;
  45. top: 0px;
  46. height: 30%;
  47. width: 100%;
  48. z-index: 90;
  49. }
  50. .artical-action-mid {
  51. position: fixed;
  52. top: 30%;
  53. height: 40%;
  54. width: 100%;
  55. z-index: 10002;
  56. }
  57. .artical-action-bottom {
  58. position: fixed;
  59. bottom: 0px;
  60. height: 30%;
  61. width: 100%;
  62. z-index: 90;
  63. }
  64. .m-tool-bar {
  65. text-align: center;
  66. width: 100%;
  67. height: 40px;
  68. position: fixed;
  69. bottom: 0px;
  70. z-index: 10000;
  71. }
  72. .m-tool-bar-mask {
  73. text-align: center;
  74. width: 100%;
  75. height: 40px;
  76. position: fixed;
  77. bottom: 0px;
  78. z-index: 9999;
  79. background: #000;
  80. opacity: .9;
  81. }
  82. .menu-mask {
  83. width: 100%;
  84. height: 100%;
  85. position: fixed;
  86. z-index: 9999;
  87. background: #000;
  88. opacity: .8;
  89. top: 0px
  90. }
  91. .m-tool-button {
  92. padding: 5px 15px;
  93. margin-top: 7px;
  94. border: 1px #fff solid;
  95. background: transparent;
  96. color: #fff
  97. }
  98. .top-nav {
  99. position: fixed;
  100. top: 0px;
  101. height: 50px;
  102. background: #000;
  103. width: 100%;
  104. opacity: 1;
  105. z-index: 10004
  106. }
  107. .top-nav-warp {
  108. position: relative;
  109. max-width: 900px;
  110. margin: 0 auto;
  111. }
  112. .top-nav-pannel-bk {
  113. position: fixed;
  114. bottom: 70px;
  115. height: 135px;
  116. background: #000;
  117. width: 100%;
  118. color: #fff;
  119. opacity: 0.9;
  120. z-index: 10003
  121. }
  122. .top-nav-pannel {
  123. position: fixed;
  124. bottom: 70px;
  125. height: 135px;
  126. background: none;
  127. width: 100%;
  128. color: #fff;
  129. z-index: 10004
  130. }
  131. .top-nav-pannel button {
  132. background: none;
  133. border: 1px #8c8c8c solid;
  134. padding: 5px 40px;
  135. color: #fff;
  136. display: inline-block;
  137. border-radius: 16px;
  138. }
  139. .top-nav-pannel .bk-container {
  140. position: relative;
  141. height: 30px;
  142. width: 30px;
  143. background: #fff;
  144. border-radius: 15px;
  145. display: inline-block;
  146. vertical-align: -14px;
  147. margin-left: 10px;
  148. }
  149. .top-nav-pannel .bk-container-current {
  150. position: absolute;
  151. height: 32px;
  152. width: 32px;
  153. border-radius: 16px;
  154. display: inline-block;
  155. vertical-align: -14px;
  156. margin-left: 10px;
  157. border: 1px #ff7800 solid;
  158. top: -2px;
  159. left: -12px;
  160. }
  161. .top-nav-pannel .bk-container span {
  162. position: absolute;
  163. top: 32px;
  164. left: -8px;
  165. display: block;
  166. font-size: 12px;
  167. width: 40px;
  168. }
  169. .bottom-nav-bk {
  170. position: fixed;
  171. bottom: 0px;
  172. height: 70px;
  173. background: #000;
  174. width: 100%;
  175. opacity: .9;
  176. z-index: 10004
  177. }
  178. .bottom-nav {
  179. position: fixed;
  180. bottom: 0px;
  181. height: 70px;
  182. background: none;
  183. width: 100%;
  184. opacity: 1;
  185. z-index: 10004;
  186. margin: 0 auto;
  187. text-align: center
  188. }
  189. .bottom-nav .item {
  190. display: inline-block;
  191. width: 32%;
  192. color: #fff;
  193. text-align: center;
  194. margin: 0 auto;
  195. }
  196. .m-button-bar {
  197. text-align: center;
  198. font-size: 14px;
  199. padding: 5px;
  200. margin: 10px;
  201. max-width: 900px;
  202. margin: 0 auto;
  203. width: 70%
  204. }
  205. .m-button-bar button {
  206. background: none;
  207. border: 1px #000 solid;
  208. padding: 5px 10px;
  209. }
  210. .nav-title {
  211. position: absolute;
  212. top: 16px;
  213. left: 42px;
  214. color: #d5d5d6
  215. }
  216. .top-nav button {
  217. width: 65px;
  218. font-size: 12px;
  219. background: none;
  220. border: 1px #d5d5d6 solid;
  221. padding: 5px 10px;
  222. color: #d5d5d6;
  223. position: absolute;
  224. top: 11px;
  225. border-radius: 16px 0 0 16px;
  226. opacity: 0.9
  227. }
  228. .child-mod {
  229. padding: 5px 10px;
  230. margin-top: 15px
  231. }
  232. .child-mod span {
  233. display: inline-block;
  234. padding-right: 20px;
  235. padding-left: 10px;
  236. }
  237. .large-font p {
  238. font-size: 18px
  239. }
  240. .small-font p {
  241. font-size: 14px
  242. }
  243. .menu-container {
  244. height: 60%;
  245. position: fixed;
  246. bottom: 0px;
  247. width: 100%;
  248. overflow: scroll;
  249. background: #fff;
  250. display: block;
  251. z-index: 19999
  252. }
  253. .chapter-list {
  254. text-align: left;
  255. }
  256. .chapter-list li {
  257. padding: 15px;
  258. }
  259. .chapter-list li:nth-child(2n-1) {
  260. background-color: #ededed
  261. }
  262. .chapter-list li:nth-child(2n) {
  263. background-color: #e6e6e6
  264. }
  265. .chapter-list .free {
  266. float: right;
  267. }
  268. .free {
  269. color: #459c3a;
  270. }
  271. .loading {
  272. position: fixed;
  273. text-align: center;
  274. width: 100%;
  275. top: 40%;
  276. color: #fff;
  277. z-index: 199999
  278. }
  279. .u-tab {
  280. position: relative;
  281. height: 34px;
  282. margin: 10px auto;
  283. line-height: 34px;
  284. border-radius: 8px;
  285. border: 1px solid #858382;
  286. font-size: 13px;
  287. background: #000;
  288. opacity: 0.9;
  289. }
  290. .u-tab li {
  291. display: inline-block;
  292. width: 49%;
  293. font-size: 13px;
  294. border-right: 1px solid #858382;
  295. -webkit-box-sizing: border-box;
  296. text-align: center;
  297. color: #fff;
  298. }
  299. .mask {
  300. position: fixed;
  301. width: 100%;
  302. height: 100%;
  303. z-index: 12000;
  304. top: 0;
  305. bottom: 0;
  306. left: 0;
  307. right: 0;
  308. opacity: .4;
  309. background: #000;
  310. }
  311. .buy-mask {
  312. height: 100%;
  313. width: 100%;
  314. position: fixed;
  315. top: 0px;
  316. text-align: center;
  317. margin: 0 auto;
  318. display: none;
  319. z-index: 10001;
  320. background: #e9dfc7;
  321. }
  322. .icon-back {
  323. position: absolute;
  324. top: 14px;
  325. left: 10px;
  326. width: 23px;
  327. height: 23px;
  328. background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkJGMkEyQkQxMjdBNDExRTU4NjA2QTJDMjFDQ0I0ODhEIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkJGMkEyQkQyMjdBNDExRTU4NjA2QTJDMjFDQ0I0ODhEIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QkYyQTJCQ0YyN0E0MTFFNTg2MDZBMkMyMUNDQjQ4OEQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QkYyQTJCRDAyN0E0MTFFNTg2MDZBMkMyMUNDQjQ4OEQiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4Ia560AAAHWklEQVR42uyd7W9U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);
  329. background-size: contain;
  330. }
  331. .icon-text {
  332. position: absolute;
  333. top: 25px;
  334. font-size: 10px;
  335. }
  336. .icon-menu, .icon-ft, .icon-night, .icon-day {
  337. position: absolute;
  338. top: 3px;
  339. left: 2px;
  340. width: 18px;
  341. height: 13px;
  342. background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADUAAAAoCAYAAABerrI1AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkNFN0E3M0IwMjc4NDExRTU5RkYxQjg1Rjk2QkEyNzBEIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkNFN0E3M0IxMjc4NDExRTU5RkYxQjg1Rjk2QkEyNzBEIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6N0M1ODVCRkYyNzg0MTFFNTlGRjFCODVGOTZCQTI3MEQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6N0M1ODVDMDAyNzg0MTFFNTlGRjFCODVGOTZCQTI3MEQiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5uTX6PAAAA0UlEQVR42uyXsQrCMBRFX4p0V39Pv8FJcekHFJe6d+v3NY6CDvUFooQ0AcEllnPhlgz3QU6bBq6ZnvdaRC7qndqoB/VR/ZC5wuxGytLtvXejUJ0uDlGgVZ8Tg6lsaWod1Jh461a9TQyMBX6hWLaSBary5zBWn8kPf8DUr/Rx8hfEPth4kxkIs+tCL4rG/VOLPH5AAQUUUEABBRRQv0O54nf1tcL6dZ3Jh9mpMH/2TkmkJFISKYmURKCAAgoooIACCihKIiWRkkhJpCR+XxJfAgwA/ROhOlYvoWQAAAAASUVORK5CYII=);
  343. background-size: contain;
  344. }
  345. .icon-night, .icon-day, .icon-ft {
  346. left: 1px;
  347. }
  348. .icon-ft {
  349. width: 20px;
  350. height: 13px;
  351. background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEYAAAAuCAYAAACViW+zAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjBCRTkzQUQ3Mjc4NzExRTU5RkYxQjg1Rjk2QkEyNzBEIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjBCRTkzQUQ4Mjc4NzExRTU5RkYxQjg1Rjk2QkEyNzBEIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Q0U3QTczQkEyNzg0MTFFNTlGRjFCODVGOTZCQTI3MEQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MEJFOTNBRDYyNzg3MTFFNTlGRjFCODVGOTZCQTI3MEQiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6/hjRDAAAFqklEQVR42uRaaWwVVRi9fTbYqoBoEGIVrDsBA6JRAY0VSkQUl7pQI8YQGjTRaNCgBtdoApho3aoRRJaIC25/VBTBCiqCuKX+QDFqFANRsRCtsRWr9XzxNBnu++6bO/fNe9i+k5y0c2fmzrwz3/22mbKuv9pNChgCLgLHgBvABnCr6Qkor1CHy1ISZjVYG9leC55V6sLsB/4ucynj7T1VmEwKU09VRBHUmx6MNIS5JuF4SQhzIniKY5+MjypVYa4OtKb/PfJxvn3B7eABOY4Rp3wo2FZKzndajCiG+68otaWkLaP23rKcQoWRDHekMj5DGZPjTisVYWYqY+vB5/g3qZPuFcIMYFJn4wnrr50EDujtwlwFVlpjreBL/P9lbkdRyfMKBcmn7gRfAbeAO8G/wS7yT3Ab+AHYBF4I7ptmuJbUfzN4vDXeCN4U2X4AvNE65gtwOG80rYc6ndcdFnD+DnAe+ChCdme+wpzJyjmKLgr1VWTsOAph11A14LoURBkKrgBPTWGu98CLIE5rPktJC73NliiG5vxOgUK3WN3GlEQRnAG+Zjo7+oQKMxCsU8YXOI7XnHAd5wnFQeAb4GBl37fgXeDp4CGS09Jiy+hPxMoud0RNSSduDV1Kt4DzrbEfecHdyvHyBKSLN8galxu4L1CYp5lxRyGO9WbwcbDT00/OtYVg2VKFJdWWxGIyjtxliUMUw/HFjhwoJBqOVMoLuca54COeonT7xDmMUHbtV5d0KU0Ej7TG/gEXxpy3kMdFIfPUBghzneLMJUS/HTCXiPOYMl6bVBgtc30T/C7mPNm/KgUnvA94iTX2Cy0lFO87rNJbmCpwiqdz9XXCUzivLyqZK21g4tadSObTU96q5FSHJxFmBj18FD8wOvhgJY/fowviKDhz9XXuBccy4kg/eWkKofo3a/tAX2HkBzQo44sSODs57illvEER3Ac7mdxtTEGY/UNrpXOi5hXzQ3NBE1LmnbyXasSTafHlocJoTvJVFmRJsI3n7a12xCD6tfnM0j8CJ4UWkUeA3yjinQ2+FXBzkxS/JKH8KI/o5oP+4LHgMWA177+a20O8ZymvKDMxa9yViK1Kue0xkwlXyLmy1M/jw6pO08RcFiPp/PeOmiRt5CorcvWEbgePDrzmbpYld7gsxiXMpeALRXSGl4Evei6XpWw0JcEf7CN9Bn4Ivs4H0pVUmDXghCIK0+xxvT70UeMd+yXx+5RhfDOrbXH68u5rV47SwFsYcWBfFrDJVKP0arRmlw2tKyj4GnwYfJY5TtKaSRUm4wihtigi1LspWcc6zme3AnKFbnGs1yo/ai4bV00BogyM8+xRVBi9ab3ApNer7XI0t7Qmezemm+zm9f3gbQmddhQnJBFGKtiDrTFZa8tS9inLlAJQrnux4/gJSu10T573MD6JMFqmuyKH8wrFLkfUc7Ujhlvbn1Cc4DTF6O/GVGFGgOMczaZCQFtO4xQTzzBM21acD+rjcqBMzNNqYQ+kEJB5P/eon6RssD8jGWb0z9t8cBj4oE9aLZDPNaZ5PtU0oTWxtM9LWqxtyZTPD7ievO9abbIb9JHeQUcmKsxUxVxlDS8vsDDLFV/R32R/2LhSOfdJ4/8VhfRdZoEfmz3fomoRbXBUGG0ZPWMK/yVUGxOzuOW0mGm9nYes531eQCvqXl7lrNrr2QuSNmajZYm/gjco1x7RnfkOdZT9o1lbFBqjGWW0pC56X9czw42DtCv7xvig7VyKP5vsL9gfQvY7Syymw2S/4thUJFEM65tNisO1I4+8EZjnkWj2ixFFLHQUH4b0ordY+6+En+knwvzElDoaCmeb4mK2JUQT78vGHPZeWhLOL3M/D55k/ntptyOy724l0WyMFpE1jO3NrEyLDVk6E1lIrvU4fgxFGkv/UsWSQnxHK5dhC/3QGqe/dHy1+a8AAwCKR08FSRIHxQAAAABJRU5ErkJggg==);
  352. background-size: contain;
  353. }
  354. .current .icon-ft {
  355. top: 2px;
  356. left: 0px;
  357. width: 22px;
  358. height: 15px;
  359. background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEwAAAA0CAYAAAAg5t6HAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkNFN0E3M0I4Mjc4NDExRTU5RkYxQjg1Rjk2QkEyNzBEIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkNFN0E3M0I5Mjc4NDExRTU5RkYxQjg1Rjk2QkEyNzBEIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Q0U3QTczQjYyNzg0MTFFNTlGRjFCODVGOTZCQTI3MEQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6Q0U3QTczQjcyNzg0MTFFNTlGRjFCODVGOTZCQTI3MEQiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7nhaYNAAANmElEQVR42uxbC1RV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);
  360. background-size: contain;
  361. }
  362. .icon-day {
  363. width: 19px;
  364. height: 18px;
  365. background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAA5CAYAAACMGIOFAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkNFN0E3M0I0Mjc4NDExRTU5RkYxQjg1Rjk2QkEyNzBEIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkNFN0E3M0I1Mjc4NDExRTU5RkYxQjg1Rjk2QkEyNzBEIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Q0U3QTczQjIyNzg0MTFFNTlGRjFCODVGOTZCQTI3MEQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6Q0U3QTczQjMyNzg0MTFFNTlGRjFCODVGOTZCQTI3MEQiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6o6V5PAAADu0lEQVR42uyaTUgVURTHm/cigiS1LEitoHoqbgtcZAStngtDoYxa9rFsYYuWfUBhuSjCneiylkH2oavoEZlC4aYsM9toakWLnpsWyfQfOMJrOvdjZs6bedQc+OF7d9499/y9M/fj3HFc110Xo3WAYfp8BozG0agTs8hFsIM+L4H6f1GkvzEnjkYz6/4DS0WmIlORSlsq+bxcKSI3gkHwBlwSGA3PkrjPNE+GnhXAZYprkOLUjOmYQjT0un/aMHAMdcqNQ3GUWq+ujqknt/i+nwZDcc1vih4cojh0cQbqyQaw4P5tSfQo14OezYNGXV0b5zly5Le+mEX2KQTmTHVtl3U58BQ0lpQtgJ2Gei2gE7SDVrANVIMf4Bt4B56Dh+C9wdc80/4RMGteTNr/J/09+lhzW3WBCTeYTVA91WPwKGgPBrldS9kFBkA/qGOuN4FnbjTz6jczvuuoXa/93UHilnxmjoMVV8ZWyJ9IbFICz4FVV9ZWyW9FiDwGfmmCnQIXQBuoBxvobxuVT2nqen57khbpPYNFRYBzoNtiPnXod3MKP0VqJxGRjmaQGQXVAf1VUz3VYOQkIbJLEdADkA3pM0v1OetKQuQ4E8gHUBXxEfDqzzC+x+MW2aL4b+eFRuu8wn9LGH9hN82dTNlrMCa02xgjf347GmdmoJ0puyu8rbrHlB2MU2QrUzYuLLJg2a6VyA7KbLsMi3Tdb9sVuwRJ+2TZrjF+b+4pTd2rkk/1hky4Z+vBapkz7lzW3Ri/ze3KpTqKTNlmYYG1TNlKmJRJpiSDxpkqq/aVKdsrLHIPU/ZFkwFUxu/dYk8M3c3ZNNjnKzsEXgmKPKxo12/G+MOOri+YslPCPXnSst2yTSEjTNkBkBcSmCd/Nu1aDF/hl15cDmdGYO26SXrtGuUs5AZT1kQrn2xIn1la6TQx1/rDT0TR9pMFxUL6fogeraJ6nBWS2k+uZQZUyauPtOO38dNNv1cltZqTzvH0WOZ49oMaqlND321yPCfSbF2ad5UXufaMFiIKLER9BqOK9Ea4m2CZEk61mrOQyYDiJjUpzFpqb5nad8olkjsfvG6RC7oIRsBsSY62SN9H6Lopd3MtyvmorcCM4gD0dkxnk7eiHARHEWg84RWkUXPinZEQeSXsCa8wOYXQqxIi31aAQN3R/rTEAv1lqCNs3taSTqoEmclmqf2FIFlCm3cGvBeBzoOt4I7vraqgJvW+awPF9B0MgJ9RRZYz+5a+75qKTEWmIstuFfm+q7RJve8ayH4LMACaxEJEaXs23AAAAABJRU5ErkJggg==);
  366. background-size: contain;
  367. }
  368. .icon-night {
  369. left: 4px;
  370. width: 16px;
  371. height: 16px;
  372. background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkU2OUYzRUEwMjc4NzExRTU5RkYxQjg1Rjk2QkEyNzBEIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjhBMzA2RjA2Mjc4QTExRTU5RkYxQjg1Rjk2QkEyNzBEIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RTY5RjNFOUUyNzg3MTFFNTlGRjFCODVGOTZCQTI3MEQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RTY5RjNFOUYyNzg3MTFFNTlGRjFCODVGOTZCQTI3MEQiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4v5YACAAAC/UlEQVR42tSaXYhNURTH97kzRnJ9ZTQzPh7IMEr5yshHEwkRkSeSjweEiMjDePTkhcKLPCApUV54GxTKcDM0JfL9QE0UGdcdEmb7L3edOq5zzz1nn332Pvdfv5e5Z9Zd666711577etIKYUGjQILwRwwDOwDfcKAamP873CwBawDrcABP8ACU87/FWUgIk3gKMjL/7VfwV4sojxcCw6AL9JfD0DGdABhv0KTwAUwO+CZvaBfGFaYAJaDyyAb8Mwt0CksKFPh9W3gWgXnSSeFJTkBZXQrOM3VJUi9oJErUGoysBKcCuE86YYt58sF0MILtiakjTvCojI+i/o876Zh9ThNARysUCr99NpmAN5FTAvxBRgS0QZlK5+GDLQrOC9sOu/NADVm70LU+9RmYJOi8yLigk8sgPUxbEy0HUATH0RUNdV2AG0hd9xyarMdwNyYNhaDOpsBTI5pYwRYYTMAHYtwh80ARmqws1ShBdEWwGAdGyI4HrMYKAegawFSMdhlo5XIK/ZAfvoO5oFukxn4oNHeID5DjzUZwCvNNsn5DjDOVADPErA7BdwF0xP2v4YCyCVknDJwjxe2k8AHT4O0VTSeawD9Mll1glZN48T5IMc+N7p/7JJm1AFWg4ERna4Da8F1j62cdzZKY5RZBtbcEuYzuAlugyfgOSjwyS7LJ8QJYJoojuuX+RycLnqPlPXgLZfBalCB11iveyL7CM6K6tEZURxp/jNWGc2pzFbBp98M3peOVXrA4Sr49I+4zpdmgDSA94UZKXX+ITeNP8sFIDg9XWBoypyni0O6THzqN1bx6iXYCH6nyHnyZXOp8+UCIF0Fe1LiPH1FdoMr/q8G74DbwS9pT/TeO+Nes64JuFpNUl+5fdByT9wMHhl0vhu06L7opobqEPiWoON9oJ0v1bXf1LuMAcdAQbPjJ6g9juqPE+PXKvVcbjeAmQqHFsmb5iVwzu1tVKYSOkpdA1jEU246To4XxZ/gZLlUU5v8CbzhI+x9bqV74r7xHwEGAPDRVwnecW5KAAAAAElFTkSuQmCC);
  373. background-size: contain;
  374. }
  375. .item-warp {
  376. width: 26px;
  377. margin: 0 auto;
  378. position: relative;
  379. }
  380. .loading-icon {
  381. margin: 0 auto;
  382. margin-top: 50%;
  383. background: url(data:image/gif;base64,R0lGODlhGAAYAIAAAK2trTE6QiH/C05FVFNDQVBFMi4wAwEAAAAh+QQFDwABACwDAAkAEgAGAAACFIQReah7GRZ0r5lJWayb4ms5n7YUACH5BAkPAAEALAIABwATAAoAAAIbhB+pq4cMwwMR0lbZTTvL1WVdWI1e45BRqkIFACH5BAkPAAEALAMABwASAAoAAAIdjA+px63r4EtmylktyI/jYHkd+GkbOY5M2LQsUwAAIfkECQ8AAQAsAwAIABMACAAAAhqMjwfLrWyaBG/FCa8NOPPcbd8WUpo5Jeq5FAA7);
  384. width: 20px;
  385. height: 20px;
  386. }
  387. .loading-mask {
  388. text-align: center;
  389. margin: 0 auto;
  390. width: 100%;
  391. height: 100%;
  392. background: #000;
  393. opacity: 0.1;
  394. position: fixed;
  395. top: 0px;
  396. }
  397. .buy-container {
  398. width: 100%;
  399. position: fixed;
  400. top: 20%;
  401. text-align: center;
  402. margin: 0 auto;
  403. display: none;
  404. z-index: 10003
  405. }
  406. .buy-container h3 {
  407. font-weight: normal;
  408. line-height: 30px;
  409. font-family: microsoft yahei, arial, helvetica, sans-serif
  410. }
  411. .buy-container h2 {
  412. padding-bottom: 80px;
  413. }
  414. .buy-container button {
  415. font-family: microsoft yahei, arial, helvetica, sans-serif;
  416. font-size: 14px;
  417. height: 40px;
  418. line-height: 40px;
  419. border: none;
  420. color: #fff;
  421. padding: 0 10px;
  422. width: 160px;
  423. background: #4a90b1;
  424. margin-top: 10px;
  425. }
  426. .m-read-content {
  427. min-height: 300px;
  428. max-width: 900px;
  429. margin: 0 auto;
  430. }
  431. .buy-popup-frame {
  432. display: none;
  433. position: fixed;
  434. bottom: 0px;;
  435. left: 0px;
  436. width: 100%;
  437. height: 266px;
  438. z-index: 39999
  439. }
  440. </style>
  441. </head>
  442. <body>
  443. <div class="loading-mask" id="init_loading">
  444. <div class="loading-icon"></div>
  445. </div>
  446. <div class="container" id="root">
  447. <div id="fiction_chapter_title"></div>
  448. <div class="m-artical-action">
  449. <div class="artical-action-mid" id="action_mid"></div>
  450. </div>
  451. <div id="fiction_container" class="m-read-content"></div>
  452. <div class="top-nav" id="top-nav" style="display:none">
  453. <div class="top-nav-warp">
  454. <div class="icon-back"></div>
  455. <div class="nav-title" id="nav_title">
  456. 返回书架
  457. </div>
  458. </div>
  459. </div>
  460. <div class="top-nav-pannel-bk font-container" id="font-container" style="display:none"></div>
  461. <div class="top-nav-pannel font-container" id="font-container" style="display:none">
  462. <div class="child-mod">
  463. <span>字号</span>
  464. <button id="large-font" class="spe-button">
  465. </button>
  466. <button id="small-font" class="spe-button" style="margin-left:10px;">
  467. </button>
  468. </div>
  469. <div class="child-mod" id="bk-container">
  470. <span>背景</span>
  471. </div>
  472. </div>
  473. <div class="m-button-bar" id="bottom_tool_bar" style="display:none;padding-bottom:70px;">
  474. <ul class="u-tab" id="bottom_tool_bar_ul">
  475. <li id="prev_button" >
  476. 上一章
  477. </li>
  478. <li id="next_button" style="border-right:none">
  479. 下一章
  480. </li>
  481. </ul>
  482. </div>
  483. <div class="bottom-nav-bk bottom_nav" style="display:none"></div>
  484. <div class="bottom-nav bottom_nav" style="display:none">
  485. <div class="item menu-button" id="menu_button">
  486. <div class="item-warp">
  487. <div class="icon-menu"></div>
  488. <div class="icon-text">
  489. 目录
  490. </div>
  491. </div>
  492. </div>
  493. <div class="item" id="font-button">
  494. <div class="item-warp">
  495. <div class="icon-ft"></div>
  496. <div class="icon-text">
  497. 字体
  498. </div>
  499. </div>
  500. </div>
  501. <div class="item" id="night-button">
  502. <div class="item-warp" style="display:none" id="day_icon">
  503. <div class="icon-day"></div>
  504. <div class="icon-text">
  505. 白天
  506. </div>
  507. </div>
  508. <div class="item-warp" id="night_icon">
  509. <div class="icon-night"></div>
  510. <div class="icon-text">
  511. 夜间
  512. </div>
  513. </div>
  514. </div>
  515. </div>
  516. <div class="loading" id="loading" style="display:none">
  517. 正在加载中...
  518. </div>
  519. <div class="m-tool-bar-mask" id="tool_bar_mask" style="display:none"></div>
  520. <ul class="menu-container chapter-list" id="menu_container" style="display:none"></ul>
  521. <div class="menu-mask" id="menu_mask" style="display:none"></div>
  522. <div class="mask" id="mask" style="display:none"></div>
  523. </div>
  524. <script src="lib/zepto.min.js"></script>
  525. <script>
  526. window.jQuery = $;
  527. </script>
  528. <script src="js/jquery.base64.js"></script>
  529. <script src="js/jquery.jsonp.js"></script>
  530. <script>
  531. (function() {'use strict';
  532. var Util = (function() {
  533. var prefix = 'ficiton_reader_';
  534. var StorageGetter = function(key) {
  535. return localStorage.getItem(prefix + key);
  536. }
  537. var StorageSetter = function(key, val) {
  538. return localStorage.setItem(prefix + key, val);
  539. }
  540. //数据解密
  541. function getBSONP(url, callback) {
  542. return $.jsonp({
  543. url : url,
  544. cache : true,
  545. callback : "duokan_fiction_chapter",
  546. success : function(result) {
  547. var data = $.base64.decode(result);
  548. var json = decodeURIComponent(escape(data));
  549. callback(json);
  550. }
  551. });
  552. };
  553. return {
  554. getBSONP : getBSONP,
  555. StorageGetter : StorageGetter,
  556. StorageSetter : StorageSetter
  557. }
  558. })();
  559. //获得阅读器内容的方法
  560. function ReaderModel(id_, cid_, onChange_) {
  561. var Title = "";
  562. var Fiction_id = id_;
  563. var Chapter_id = cid_;
  564. if (Util.StorageGetter(Fiction_id + 'last_chapter')) {
  565. Chapter_id = Util.StorageGetter(Fiction_id + 'last_chapter');
  566. }
  567. if (!Chapter_id) {
  568. Chapter_id = 1;
  569. }
  570. var Chapters = [];
  571. var init = function() {
  572. getFictionInfoPromise.then(function(d) {
  573. gotoChapter(Chapter_id);
  574. });
  575. /*
  576. getFictionInfo(function() {
  577. gotoChapter(Chapter_id);
  578. });
  579. */
  580. }
  581. var gotoChapter = function(chapter_id) {
  582. Chapter_id = chapter_id;
  583. getCurChapterContent();
  584. };
  585. //获得当前章节内容
  586. var getCurChapterContent = function() {
  587. $.get("data/data" + Chapter_id + ".json", function(data) {
  588. if (data.result == 0) {
  589. var url = data.jsonp;
  590. Util.getBSONP(url, function(data) {
  591. $('#init_loading').hide();
  592. onChange_ && onChange_(data);
  593. });
  594. } else {
  595. }
  596. }, 'json');
  597. return;
  598. };
  599. var getFictionInfoPromise = new Promise(function(resolve, reject) {
  600. $.get("data/chapter.json", function(data) {
  601. if (data.result == 0) {
  602. Title = data.title;
  603. $('#nav_title').html('返回书架');
  604. window.ChaptersData = data.chapters;
  605. window.chapter_data = data.chapters;
  606. for (var i = 0; i < data.chapters.length; i++) {
  607. Chapters.push({
  608. "chapter_id" : data.chapters[i].chapter_id,
  609. "title" : data.chapters[i].title
  610. })
  611. }
  612. resolve(Chapters);
  613. } else {
  614. reject(data);
  615. }
  616. }, 'json');
  617. });
  618. /*
  619. var getFictionInfo = function(callback) {
  620. $.get("/data/chapter.json", function(data) {
  621. Title = data.title;
  622. $('#nav_title').html('返回书架');
  623. window.ChaptersData = data.chapters;
  624. window.chapter_data = data.chapters;
  625. for (var i = 0; i < data.chapters.length; i++) {
  626. Chapters.push({
  627. "chapter_id" : data.chapters[i].chapter_id,
  628. "title" : data.chapters[i].title
  629. })
  630. }
  631. callback && callback();
  632. }, 'json');
  633. };
  634. */
  635. //获得上一章内容
  636. var prevChapter = function() {
  637. Chapter_id = parseInt(Chapter_id);
  638. if (Chapter_id == 0) {
  639. return
  640. }
  641. var cid = Chapter_id - 1;
  642. gotoChapter(cid);
  643. Util.StorageSetter(Fiction_id + 'last_chapter', Chapter_id);
  644. };
  645. //获得下一章内容
  646. var nextChapter = function() {
  647. Chapter_id = parseInt(Chapter_id);
  648. if (Chapter_id == Chapters.length - 1) {
  649. return
  650. }
  651. var cid = Chapter_id + 1;
  652. gotoChapter(cid);
  653. Util.StorageSetter(Fiction_id + 'last_chapter', Chapter_id);
  654. };
  655. return {
  656. init : init,
  657. go : gotoChapter,
  658. prev : prevChapter,
  659. next : nextChapter,
  660. getChapter_id : function() {
  661. return Chapter_id;
  662. }
  663. };
  664. }
  665. //画一下基本的展示框架
  666. function RenderBaseFrame(container) {
  667. function parseChapterData(jsonData) {
  668. var jsonObj = JSON.parse(jsonData);
  669. var html = "<h4>" + jsonObj.t + "</h4>";
  670. for (var i = 0; i < jsonObj.p.length; i++) {
  671. html += "<p>" + jsonObj.p[i] + "</p>";
  672. }
  673. return html;
  674. }
  675. return function(data) {
  676. container.html(parseChapterData(data));
  677. };
  678. }
  679. function main() {
  680. // 获取fiction_id 和 chapter_id
  681. var RootContainer = $('#fiction_container');
  682. var Fiction_id, Chapter_id;
  683. // 绑定事件
  684. var ScrollLock = false;
  685. var Doc = document;
  686. var Screen = Doc.body;
  687. var Win = $(window);
  688. //是否是夜间模式
  689. var NightMode = false;
  690. //初始化的字体大小
  691. var InitFontSize;
  692. //dom节点的缓存
  693. var Dom = {
  694. bottom_tool_bar : $('#bottom_tool_bar'),
  695. nav_title : $('#nav_title'),
  696. bk_container : $('#bk-container'),
  697. night_button : $('#night-button'),
  698. next_button : $('#next_button'),
  699. prev_button : $('#prev_button'),
  700. back_button : $('#back_button'),
  701. top_nav : $('#top-nav'),
  702. bottom_nav : $('.bottom_nav')
  703. }
  704. // 程序初始化
  705. var readerUIFrame = RenderBaseFrame(RootContainer);
  706. //获得章节数据,展示
  707. var readerModel = ReaderModel(Fiction_id || 13359, Chapter_id, function(data) {
  708. readerUIFrame(data);
  709. Dom.bottom_tool_bar.show();
  710. setTimeout(function() {
  711. ScrollLock = false;
  712. Screen.scrollTop = 0;
  713. }, 20);
  714. });
  715. //阅读器数据内容展示
  716. readerModel.init();
  717. //从缓存中读取的信息进行展示
  718. var ModuleFontSwitch = (function() {
  719. //字体和背景的颜色表
  720. var colorArr = [{
  721. value : '#f7eee5',
  722. name : '米白',
  723. font : ''
  724. }, {
  725. value : '#e9dfc7',
  726. name : '纸张',
  727. font : '',
  728. id : "font_normal"
  729. }, {
  730. value : '#a4a4a4',
  731. name : '浅灰',
  732. font : ''
  733. }, {
  734. value : '#cdefce',
  735. name : '护眼',
  736. font : ''
  737. }, {
  738. value : '#283548',
  739. name : '灰蓝',
  740. font : '#7685a2',
  741. bottomcolor : '#fff'
  742. }, {
  743. value : '#0f1410',
  744. name : '夜间',
  745. font : '#4e534f',
  746. bottomcolor : 'rgba(255,255,255,0.7)',
  747. id : "font_night"
  748. }];
  749. var tool_bar = Util.StorageGetter('toolbar_background_color');
  750. var bottomcolor = Util.StorageGetter('bottom_color');
  751. var color = Util.StorageGetter('background_color');
  752. var font = Util.StorageGetter('font_color');
  753. var bkCurColor = Util.StorageGetter('background_color');
  754. var fontColor = Util.StorageGetter('font_color');
  755. for (var i = 0; i < colorArr.length; i++) {
  756. var display = 'none';
  757. if (bkCurColor == colorArr[i].value) {
  758. display = '';
  759. }
  760. Dom.bk_container.append('<div class="bk-container" id="' + colorArr[i].id + '" data-font="' + colorArr[i].font + '" data-bottomcolor="' + colorArr[i].bottomcolor + '" data-color="' + colorArr[i].value + '" style="background-color:' + colorArr[i].value + '"><div class="bk-container-current" style="display:' + display + '"></div><span style="display:none">' + colorArr[i].name + '</span></div>');
  761. }
  762. RootContainer.css('min-height', $(window).height() - 100);
  763. if (bottomcolor) {
  764. $('#bottom_tool_bar_ul').find('li').css('color', bottomcolor);
  765. }
  766. if (color) {
  767. $('body').css('background-color', color);
  768. }
  769. if (font) {
  770. $('.m-read-content').css('color', font);
  771. }
  772. //夜间模式
  773. if (fontColor == '#4e534f') {
  774. NightMode = true;
  775. $('#day_icon').show();
  776. $('#night_icon').hide();
  777. $('#bottom_tool_bar_ul').css('opacity', '0.6');
  778. }
  779. //字体设置信息
  780. InitFontSize = Util.StorageGetter('font_size');
  781. InitFontSize = parseInt(InitFontSize);
  782. if (!InitFontSize) {
  783. InitFontSize = 18;
  784. }
  785. RootContainer.css('font-size', InitFontSize);
  786. })();
  787. //页面中的零散交互事件处理
  788. var EventHandler = (function() {
  789. //夜间和白天模式的转化
  790. Dom.night_button.click(function() {
  791. if (NightMode) {
  792. $('#day_icon').hide();
  793. $('#night_icon').show();
  794. $('#font_normal').trigger('click');
  795. NightMode = false;
  796. } else {
  797. $('#day_icon').show();
  798. $('#night_icon').hide();
  799. $('#font_night').trigger('click');
  800. NightMode = true;
  801. }
  802. });
  803. //字体和背景颜色的信息设置
  804. Dom.bk_container.delegate('.bk-container', 'click', function() {
  805. var color = $(this).data('color');
  806. var font = $(this).data('font');
  807. var bottomcolor = $(this).data('bottomcolor');
  808. var tool_bar = font;
  809. Dom.bk_container.find('.bk-container-current').hide();
  810. $(this).find('.bk-container-current').show();
  811. if (!font) {
  812. font = '#000';
  813. }
  814. if (!tool_bar) {
  815. tool_bar = '#fbfcfc';
  816. }
  817. if (bottomcolor && bottomcolor != "undefined") {
  818. $('#bottom_tool_bar_ul').find('li').css('color', bottomcolor);
  819. } else {
  820. $('#bottom_tool_bar_ul').find('li').css('color', '#a9a9a9');
  821. }
  822. $('body').css('background-color', color);
  823. $('.m-read-content').css('color', font);
  824. Util.StorageSetter('toolbar_background_color', tool_bar);
  825. Util.StorageSetter('bottom_color', bottomcolor);
  826. Util.StorageSetter('background_color', color);
  827. Util.StorageSetter('font_color', font);
  828. var fontColor = Util.StorageGetter('font_color');
  829. //夜间模式
  830. if (fontColor == '#4e534f') {
  831. NightMode = true;
  832. $('#day_icon').show();
  833. $('#night_icon').hide();
  834. $('#bottom_tool_bar_ul').css('opacity', '0.6');
  835. } else {
  836. NightMode = false;
  837. $('#day_icon').hide();
  838. $('#night_icon').show();
  839. $('#bottom_tool_bar_ul').css('opacity', '0.9');
  840. }
  841. });
  842. //按钮的多态样式效果
  843. $('.spe-button').on('touchstart', function() {
  844. $(this).css('background', 'rgba(255,255,255,0.3)');
  845. }).on('touchmove', function() {
  846. $(this).css('background', 'none');
  847. }).on('touchend', function() {
  848. $(this).css('background', 'none');
  849. });
  850. //字体放大
  851. $('#large-font').click(function() {
  852. if (InitFontSize > 20) {
  853. return;
  854. }
  855. InitFontSize += 1;
  856. Util.StorageSetter('font_size', InitFontSize);
  857. RootContainer.css('font-size', InitFontSize);
  858. });
  859. //字体缩小
  860. $('#small-font').click(function() {
  861. if (InitFontSize < 12) {
  862. return;
  863. }
  864. InitFontSize -= 1;
  865. Util.StorageSetter('font_size', InitFontSize);
  866. RootContainer.css('font-size', InitFontSize);
  867. });
  868. var font_container = $('.font-container');
  869. var font_button = $('#font-button');
  870. var menu_container = $('#menu_container');
  871. font_button.click(function() {
  872. if (font_container.css('display') == 'none') {
  873. font_container.show();
  874. font_button.addClass('current');
  875. } else {
  876. font_container.hide();
  877. font_button.removeClass('current');
  878. }
  879. });
  880. RootContainer.click(function() {
  881. font_container.hide();
  882. font_button.removeClass('current');
  883. });
  884. //对屏幕的滚动监控
  885. Win.scroll(function() {
  886. Dom.top_nav.hide();
  887. Dom.bottom_nav.hide();
  888. font_container.hide();
  889. font_button.removeClass('current');
  890. });
  891. //章节翻页
  892. Dom.next_button.click(function() {
  893. readerModel.next();
  894. });
  895. Dom.prev_button.click(function() {
  896. readerModel.prev();
  897. });
  898. //返回上级页面
  899. Dom.back_button.click(function() {
  900. if (Fiction_id) {
  901. location.href = '/book/' + Fiction_id;
  902. }
  903. });
  904. //返回首页
  905. Dom.nav_title.click(function() {
  906. location.href = '/';
  907. });
  908. $('.icon-back').click(function() {
  909. location.href = '/';
  910. });
  911. $('#menu_button').click(function() {
  912. location.href = '#';
  913. });
  914. //屏幕中央事件
  915. $('#action_mid').click(function() {
  916. if (Dom.top_nav.css('display') == 'none') {
  917. Dom.bottom_nav.show();
  918. Dom.top_nav.show();
  919. } else {
  920. Dom.bottom_nav.hide();
  921. Dom.top_nav.hide();
  922. font_container.hide();
  923. font_button.removeClass('current');
  924. }
  925. });
  926. })();
  927. }
  928. return main();
  929. })();
  930. </script>
  931. </body>
  932. </html>