index.js 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246
  1. var bookData = dataOne().bookData;
  2. console.log(bookData)
  3. $(function() {
  4. // 畅销书排行榜获取高度
  5. var conH = $(".aside-left .top .con-wrap").height();
  6. $(".aside-left .top .con").css("height", conH + "px");
  7. var rankH = $(".con li:nth-child(2) .book-rank").height();
  8. var rankShowH = 3.5 * rankH;
  9. var overHiddenH = rankH * 5 + rankShowH;
  10. $(".book-show").css("height", rankShowH + "px");
  11. var curBookRank = $(".aside-left li.active .book-rank");
  12. curBookRank.css("height", rankH + "px");
  13. // 畅销书数据获取
  14. var pressData = dataOne().bestSelling;
  15. var rankUl = $(".aside-left .top ul");
  16. var Month = [
  17. "Jan",
  18. "Feb",
  19. "Mar",
  20. "Apr",
  21. "May",
  22. "Jun",
  23. "Jul",
  24. "Aug",
  25. "Sep",
  26. "Oct",
  27. "Nov",
  28. "Dec"
  29. ];
  30. var bookName = "";
  31. var pressName = "";
  32. var author = "";
  33. var ISBN = "";
  34. var pressDate = "";
  35. var pricing = "";
  36. var imageUrl = "";
  37. rankUl.each(function(index, item) {
  38. var len = item.children.length;
  39. for (var i = 0; i < len; i++) {
  40. bookName = pressData[Month[index]][i]["bookName"];
  41. pressName = pressData[Month[index]][i]["pressName"];
  42. author = pressData[Month[index]][i]["author"];
  43. ISBN = pressData[Month[index]][i]["ISBN"];
  44. pressDate = pressData[Month[index]][i]["pressDate"];
  45. pricing = pressData[Month[index]][i]["pricing"];
  46. imageUrl = pressData[Month[index]][i]["imageUrl"];
  47. $(item.children[i])
  48. .find(".name")
  49. .text(bookName);
  50. $(item.children[i])
  51. .find(".company")
  52. .text(pressName);
  53. $(item.children[i])
  54. .find(".authors")
  55. .text(author);
  56. $(item.children[i])
  57. .find(".isbn")
  58. .text(ISBN);
  59. $(item.children[i])
  60. .find(".pub-date")
  61. .text(pressDate);
  62. $(item.children[i])
  63. .find(".pricing")
  64. .text(pricing);
  65. $(item.children[i])
  66. .find("img")
  67. .attr("src", imageUrl);
  68. }
  69. });
  70. // 复制第一个ul
  71. /* var parentWrap = $(".aside-left .top .over-wrap");
  72. var ulClone = $(".aside-left .top ul")
  73. .eq(0)
  74. .clone(true);
  75. parentWrap.append(ulClone); */
  76. // 添加点击事件
  77. $(".aside-left .top").on('click', 'li', function(el) {
  78. var curItem = $(el.currentTarget);
  79. var bookName = curItem.find('.name').text().trim();
  80. var hasBook = false;
  81. var index = 0;
  82. console.log(bookName)
  83. for(var i = 0; i < bookData.length; i++) {
  84. console.log(bookData[i]["BookInformation"]["bookName"])
  85. if (bookData[i]["BookInformation"]["bookName"] === bookName) {
  86. index = i;
  87. hasBook = true;
  88. break;
  89. }
  90. }
  91. if (!hasBook) return false;
  92. var curHref = window.location.href;
  93. var str = curHref.indexOf("index.html");
  94. var newHref = curHref.substr(0, str) + "four.html?index=" + index;
  95. window.location.href = newHref;
  96. })
  97. // 获取行高
  98. var topSpan = $(".aside-left .top .book-rank span");
  99. var topSpanH = topSpan.height();
  100. topSpan.css("line-height", topSpanH + "px");
  101. var bottomSpan = $(".aside-left .bottom .book-rank span");
  102. var bottomSpanH = bottomSpan.height();
  103. bottomSpan.css("line-height", bottomSpanH + "px");
  104. });
  105. // // 柱形折线图
  106. var trendBar1 = echarts.init(document.getElementById("trendBar1"));
  107. var optionBar = {
  108. grid: {
  109. top: 50,
  110. bottom: "20%"
  111. },
  112. legend: {
  113. data: ["销售码洋", "同比增长"],
  114. right: "5%",
  115. itemWidth: 18,
  116. itemHeight: 12,
  117. textStyle: {
  118. color: "#fff"
  119. }
  120. },
  121. xAxis: {
  122. data: [
  123. "1月",
  124. "2月",
  125. "3月",
  126. "4月",
  127. "5月",
  128. "6月",
  129. "7月",
  130. "8月",
  131. "9月",
  132. "10月",
  133. "11月",
  134. "12月"
  135. ],
  136. axisLine: {
  137. show: false,
  138. lineStyle: {
  139. color: "#07bffb"
  140. }
  141. },
  142. axisTick: {
  143. show: false
  144. },
  145. axisLabel: {
  146. interval: 0
  147. }
  148. },
  149. yAxis: [
  150. {
  151. name: "码洋(/千万)",
  152. axisLine: {
  153. show: false,
  154. lineStyle: {
  155. color: "#07bffb"
  156. }
  157. },
  158. splitLine: {
  159. show: false
  160. },
  161. axisTick: {
  162. show: false
  163. },
  164. interval: 5,
  165. min: 0,
  166. max: 20,
  167. position: "left"
  168. },
  169. {
  170. name: "同比增长(%)",
  171. max: 100,
  172. min: 0,
  173. axisLabel: {
  174. formatter: "{value}"
  175. },
  176. axisLine: {
  177. show: false,
  178. lineStyle: {
  179. color: "#07bffb"
  180. }
  181. },
  182. splitLine: {
  183. show: false
  184. },
  185. axisTick: {
  186. show: false
  187. },
  188. position: "right"
  189. }
  190. ],
  191. series: [
  192. {
  193. name: "销售码洋",
  194. type: "bar",
  195. barWidth: "40%",
  196. barGap: 5,
  197. itemStyle: {
  198. normal: {
  199. color: new echarts.graphic.LinearGradient(
  200. 0,
  201. 0,
  202. 0,
  203. 1,
  204. [
  205. {
  206. offset: 0,
  207. color: "#00fecc"
  208. },
  209. {
  210. offset: 0.8,
  211. color: "#2690cf"
  212. }
  213. ],
  214. false
  215. )
  216. }
  217. },
  218. data: [2.5, 5.4, 6.4, 4.4, 5.7, 11, 12, 10, 8, 14, 18, 19]
  219. },
  220. {
  221. name: "同比增长",
  222. type: "line",
  223. itemStyle: {
  224. color: "#fff"
  225. },
  226. yAxisIndex: 1,
  227. data: [10, 8, 36, 12, 24, 16, 48, 32, 18, 14, 66, 70]
  228. }
  229. ]
  230. };
  231. trendBar1.setOption(optionBar);