index.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. let activePageIntervalId = null;
  2. function showPage(pageId) {
  3. const pages = document.querySelectorAll('.page');
  4. number = 0
  5. pages.forEach(page => {
  6. page.classList.remove('active');
  7. button_id = pageId
  8. if(pageId == "page2")
  9. {
  10. setActivePage(function1, 1000)
  11. }
  12. if(pageId == "page3" || pageId == "page5")
  13. {
  14. setActivePage(function2, 1000)
  15. }
  16. if(pageId == "page4")
  17. {
  18. setActivePage(function3, 1000)
  19. }
  20. });
  21. const selectedPage = document.getElementById(pageId);
  22. selectedPage.classList.add('active');
  23. }
  24. function function1()
  25. {
  26. ws.send(mk_hdr(PKT_TYPE.PKT_TYPE_POWER_TOTAL,0));
  27. }
  28. function function2()
  29. {
  30. ws.send(mk_hdr(PKT_TYPE.PKT_TYPE_POWER_CH,0));
  31. }
  32. function function3()
  33. {
  34. console.log(1)
  35. }
  36. function setActivePage(pageFunction, intervalTime)
  37. {
  38. // 停止之前活动的页面定时函数
  39. if (activePageIntervalId !== null)
  40. {
  41. clearInterval(activePageIntervalId);
  42. }
  43. activePageIntervalId = setInterval(pageFunction, intervalTime);
  44. }
  45. document.addEventListener('DOMContentLoaded', () => {
  46. showPage('page1');
  47. });
  48. function mk_hdr(type)
  49. {
  50. var tmp,length=0;
  51. var buffer = new ArrayBuffer(9);
  52. tmp = new DataView(buffer, length);
  53. var t = 0xdead;
  54. tmp.setUint16(0,t,true);//magic
  55. length += 2;
  56. tmp = new DataView(buffer, length);
  57. tmp.setUint8(0,type,true); //type
  58. length += 1;
  59. tmp = new DataView(buffer, length);
  60. tmp.setUint8(0,0,true); //subtype
  61. length += 1;
  62. tmp = new DataView(buffer, length);
  63. tmp.setUint8(0,0,true); //nack
  64. length += 1;
  65. tmp = new DataView(buffer, length);
  66. tmp.setUint32(0,0,true); //dlen
  67. length += 4;
  68. return buffer;
  69. }