game-center.min.js 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. /**
  2. * Created by admin on 2018/1/8.
  3. */
  4. require(['config'], function () {
  5. require(['jquery', 'pagination'], function ($, pagination) {
  6. var arr = [];
  7. var theme = [];
  8. var typearr = '';
  9. // var basurl = $('#gamedetailUrl').val();
  10. var classifyID = null;
  11. initGameCenter();
  12. tc_Event();
  13. function initGameCenter() {
  14. classifyID = $('#js-classifyTab a:first-child').attr('classifyid');
  15. $('#js-classifyTab a:first-child').addClass('active')
  16. }
  17. function tc_Event() {
  18. $('#tc_Tab a').on('click', function () {
  19. if ($(this).hasClass('active')) {
  20. return false;
  21. }
  22. typearr = $(this).attr('tpid');
  23. $(this).addClass('active').siblings().removeClass('active');
  24. renderGamelist()
  25. })
  26. }
  27. function gamehtml(res) {
  28. var gameshtml = '';
  29. var starhtml = '';
  30. var data = res.game_list.list;
  31. for (var i=0;i< data.length;i++) {
  32. starhtml = '';
  33. for (var j=0;j<data[i].star_cnt;j++) {
  34. starhtml += '<img src="__STATIC__/web/pc/images/star_icon.svg" alt="">'
  35. }
  36. var type = data[i].type.split(',').splice(0,1).join('');
  37. gameshtml += ' <div class="gc_body_item">\n' +
  38. ' <a target="_blank" title="'+data[i].gamename+'" href="/v8/game/detail/gameid/' +data[i].gameid+ '.html' + '"><img src="'+data[i].icon+'" alt="" class="gc_body_img"></a>\n' +
  39. ' <p class="gc_body_title"><a title="'+data[i].gamename+'" href="/v8/game/detail/gameid/'+data[i].gameid+'.html'+'">'+data[i].gamename+'</a></p>\n' +
  40. ' <p class="gc_body_dtl"><b>'+type+'</b>&nbsp;|&nbsp;'+data[i].size+'</p>\n' +
  41. ' <div class="gc_body_star">\n' +
  42. ' <p class="clearfix">'+starhtml+'</p>\n' +
  43. ' </div>\n' +
  44. ' <a href="'+data[i].down_url+'" class="gc_body_dw">立即下载</a>\n' +
  45. ' </div>'
  46. }
  47. $('#gametpl').html(gameshtml)
  48. }
  49. $('#js-classifyTab a').on('click', function () {
  50. $(this).addClass('active').siblings().removeClass('active')
  51. classifyID = $(this).attr('classifyid');
  52. renderGamelist()
  53. })
  54. $('#gctype_Tab a').on('click', function () {
  55. $(this).addClass('active').siblings().removeClass('active')
  56. var index = $(this).index() - 1;
  57. var html = '';
  58. var children;
  59. var tcidArr = [];
  60. if (index < 0) {
  61. typearr = '';
  62. children = theme
  63. for (var i=0;i<children.length;i++) {
  64. tcidArr.push(children[i].typeid)
  65. html += '<a href="javascript:;" tpid="'+children[i].typeid+'">'+children[i].typename+'</a>'
  66. }
  67. } else {
  68. tcidArr.push(arr.list[index].typeid)
  69. if (arr.list[index].sublist) {
  70. children = arr.list[index].sublist;
  71. for (var i=0;i<children.length;i++) {
  72. tcidArr.push(children[i].typeid)
  73. html += '<a href="javascript:;" tpid="'+children[i].typeid+'">'+children[i].typename+'</a>'
  74. }
  75. } else {
  76. html = '';
  77. }
  78. typearr = tcidArr.join(',');
  79. }
  80. $('#tc_Tab').html(html)
  81. renderGamelist(1);
  82. tc_Event();
  83. })
  84. // 生成游戏分类
  85. // renderClassify();
  86. renderPagination();
  87. // 头部颜色
  88. var bgColor = ['#F0EEEE','#EFF1E9','#E4EDE4','#F0E5E2','#DAE7EC','#F4EAF1','#F5F5F5'];
  89. $('.gc_top_cnt dl.active .cnt_dd>a').each(function(){
  90. var itemBgColor = Math.ceil(Math.random() * bgColor.length);
  91. $(this).css({'backgroundColor': bgColor[itemBgColor]});
  92. });
  93. function renderClassify() {
  94. // fetch
  95. // render
  96. }
  97. function renderGamelist(page) {
  98. page = page || 1;
  99. $.ajax({
  100. url: '',
  101. type: 'get',
  102. data: {
  103. classify: classifyID,
  104. type: typearr,
  105. page: page
  106. },
  107. success: function (res) {
  108. gamehtml(res)
  109. initpage(res.game_list.count, page)
  110. $('#findnum').text('找到 '+res.game_list.count+' 个游戏')
  111. arr = res.type;
  112. theme = res.theme.list
  113. }
  114. })
  115. }
  116. function renderPagination(count) {
  117. renderGamelist();
  118. }
  119. function initpage(count, page) {
  120. console.log(count);
  121. pagination({
  122. elem : '#pagination',
  123. total : count,
  124. callback: renderGamelist,
  125. size : 10,
  126. number : page
  127. });
  128. }
  129. });
  130. });