browser.html 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <link rel="icon" href="../static/img/favicon2.ico" type="img/x-ico">
  7. <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0">
  8. <title>双子星浏览器</title>
  9. <link rel="stylesheet" href="https://cdn.bootcss.com/weui/1.1.3/style/weui.min.css">
  10. <script src="../static/js/vender/vue/axios.min.js"></script>
  11. <script src="../static/js/vender/jquery-3.4.1.min.js"></script>
  12. <script src="../static/js/vender/vue/vue.min.js"></script>
  13. <link rel="stylesheet" href="../static/js/vender/toastr/toastr.min.css">
  14. <script src="../static/js/vender/toastr/toastr.min.js"></script>
  15. <link rel="stylesheet" href="https://cdn.bootcss.com/jquery-weui/1.2.1/css/jquery-weui.min.css">
  16. <script src="../static/js/vender/config.js"></script>
  17. <link rel="stylesheet" href="../static/css/browser.css">
  18. <script src="../static/js/vender/vue/config.js"></script>
  19. <script type="text/javascript">
  20. var deviveWidth = document.documentElement.clientWidth;
  21. document.documentElement.style.fontSize = deviveWidth / 7.5 + 'px';
  22. </script>
  23. </head>
  24. <body>
  25. <div class="container">
  26. <div class="logo-row">
  27. <img class="logo" src="../static/img/browser/logo.png" />
  28. </div>
  29. <div class="search-wrap">
  30. <img class="search-icon" id="search-icon" src="../static/img/browser/search-icon.png" />
  31. <input class="ipt" id="ipt" placeholder="搜索或输入网址" />
  32. </div>
  33. <div class="tag-wrap" id="tag-wrap"></div>
  34. </div>
  35. <script>
  36. toastr.options.positionClass = 'toast-center-center';
  37. toastr.options.timeOut = '1500';
  38. </script>
  39. <script type="text/javascript">
  40. document.addEventListener("visibilitychange",()=>{
  41. if(document.hidden){
  42. init();
  43. }else{
  44. init();
  45. }
  46. })
  47. const tagDom = document.getElementById("tag-wrap");
  48. let flag = true, timer=null;
  49. (function(){
  50. init();
  51. })();
  52. function init(){
  53. $.ajax({
  54. url: `${baseUrl}/api/public/v1/browserPlate/client/query`,
  55. type: 'get',
  56. contentType:"application/json",
  57. dataType: 'json',
  58. cache: false,
  59. success: function (res) {
  60. let list = res.data;
  61. let node = '';
  62. for(let i=0; i < list.length; i++){
  63. node += `<div class="tag-item" data-plateName="${list[i].plateName}" data-id="${list[i].id}">
  64. <img class="icon-row" data-plateName="${list[i].plateName}" data-id="${list[i].id}" src=${fileCenterApi}/document/newFile/download/0/3dn9b4585511476691c6?fileKey=${list[i].iconImage} />
  65. <div class="icon-title" data-plateName="${list[i].plateName}" data-id="${list[i].id}">${list[i].plateName}</div>
  66. <img class="right-arrow" src="../static/img/browser/right-arrow.png" data-plateName="${list[i].plateName}" data-id="${list[i].id}" />
  67. <div class="right-arrow-heght"></div>
  68. </div>`
  69. }
  70. tagDom.innerHTML = node;
  71. }
  72. })
  73. };
  74. tagDom.addEventListener('click',(e)=>{
  75. let plateName = e.target.dataset.platename;
  76. let id = e.target.dataset.id;
  77. if(!id) {
  78. return
  79. }
  80. $.ajax({
  81. url: `${baseUrl}/api/public/v1/browserPlate/reportClickNum/${id}`,
  82. type: 'get',
  83. contentType:"application/json",
  84. dataType: 'json',
  85. cache: false,
  86. success: function (res) {
  87. if(res.status === 0){
  88. isGetStatus(id, plateName);
  89. } else {
  90. stopManyClick(() => {
  91. toastr.error(res.msg);
  92. })
  93. }
  94. }
  95. })
  96. },false);
  97. // 验证是否下架
  98. function isGetStatus(id, plateName) {
  99. $.ajax({
  100. url: `${baseUrl}/api/public/v1/browserPlate/getStatus/${id}`,
  101. type: 'get',
  102. contentType:"application/json",
  103. dataType: 'json',
  104. cache: false,
  105. success: function (res) {
  106. if(res.status === 0){
  107. location.href = `./browserDetail.html?plateName=${encodeURIComponent(plateName)}&plateId=${id}`;
  108. } else {
  109. stopManyClick(() => {
  110. toastr.error(res.msg);
  111. })
  112. }
  113. }
  114. })
  115. }
  116. //防止提示一秒内重复显示
  117. function stopManyClick(fn) {
  118. if (flag) {
  119. fn();
  120. }
  121. flag = false;
  122. if(timer){clearTimeout(timer);}
  123. timer = setTimeout(() => {flag = true}, 1500);
  124. }
  125. //点击按钮搜索
  126. const searchDom = document.getElementById("search-icon");
  127. searchDom.addEventListener('click',()=>{
  128. var key = document.getElementById("ipt").value;
  129. var wd = "https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd=" + key;
  130. window.open(wd);
  131. },false);
  132. </script>
  133. </body>
  134. </html>