17LIVE Layout Setting

將聊天室與直播位置切換

当前为 2024-01-14 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name 17LIVE Layout Setting
  3. // @namespace https://github.com/RutsuLun
  4. // @version 0.1
  5. // @description 將聊天室與直播位置切換
  6. // @author Rutsu Lun
  7. // @match https://17.live/zh-Hant/live/*
  8. // @icon https://www.google.com/s2/favicons?domain=17.live
  9. // @license Only Share
  10. // @grant GM.registerMenuCommand
  11. // ==/UserScript==
  12.  
  13. (function () {
  14. GM.registerMenuCommand('呼叫', createBtnList);
  15. GM.registerMenuCommand('介面切換', loayoutSwitch);
  16. GM.registerMenuCommand('隱藏左側面板', hideHeader);
  17. })();
  18.  
  19. const btnListSetting = [
  20. { id: 'loayoutSwitch', name: '介面切換', method: loayoutSwitch, },
  21. { id: 'hideHeader', name: '隱藏左側面板', method: hideHeader, },
  22. ]
  23. const btnListCss = 'position: absolute;top: 0;left: 0;'
  24.  
  25. function loayoutSwitch() {
  26. const target = document.querySelector('.VideoPageLayout__Wrapper-sc-ctht72-0');
  27. const cssList = 'flex-direction: row-reverse;';
  28. target.style.cssText += target.style.cssText == '' ? cssList : ''
  29. }
  30.  
  31. function hideHeader() {
  32. const header = document.querySelector('.Header__HeaderWrapper-sc-1xcem6e-1');
  33. header.style.cssText += 'display: none !important;'
  34.  
  35. }
  36.  
  37. function createBtnList() {
  38. const chat = document.querySelector('.Main__Body-sc-1xljje-1');
  39. const btnList = document.createElement('span');
  40. btnList.id = 'btnList';
  41. btnList.style = btnListCss;
  42. chat.append(btnList);
  43. btnListSetting.forEach(b => {
  44. let btn = document.createElement('button');
  45. btn.id = b.id;
  46. btn.innerText = b.name;
  47. btnList.append(btn);
  48. btn.addEventListener('click', b.method);
  49. });
  50. }
  51.  
  52. const main = function () {
  53. console.log('載入完畢,開始建立按鈕');
  54. createBtnList();
  55. }
  56.  
  57. window.onload = () => {
  58. main()
  59. }