Devi accedere o registrarti per continuare.

PKU_bbs_hidden_user_info

hide/show user-info icon in PKU_bbs, when hit the button.

  1. // ==UserScript==
  2. // @name PKU_bbs_hidden_user_info
  3. // @namespace PKU_bbs_hidden_user_info
  4. // @version 0.1
  5. // @license MIT
  6. // @description hide/show user-info icon in PKU_bbs, when hit the button.
  7. // @author BBSer
  8. // @match https://bbs.pku.edu.cn/v2/*
  9. // @icon https://bbs.pku.edu.cn/v2/images/logo.jpg
  10. // @grant GM_getValue
  11. // @grant GM_setValue
  12. // @run-at document-end
  13. // ==/UserScript==
  14.  
  15. //添加一个按钮到nav标签中,点击按钮隐藏id="user_info"的div标签,再次点击重新显示
  16. (function () {
  17. // 查询上次的隐藏状态,避免刷新网页后需要重新点击隐藏按钮的问题
  18. var hidden_user_info_state = GM_getValue("hidden_user_info_state", false)
  19.  
  20. var nav = document.querySelector("#left-nav")
  21. var user_info = document.querySelector("#user-info")
  22.  
  23. // 创建一个button,用div节点包裹,设置button的onclick事件
  24. var btn_div = document.createElement("div")
  25. btn_div.setAttribute("align", "center") // 居中显示
  26. var btn = document.createElement("button")
  27.  
  28. // 设置显示样式
  29. btn.style.cssText += "margin-top: 10px; margin-bottom: 10px; border-radius: 10px; padding: 5px 10px;" // 把btn放在btn_div的中间,上下留一点空隙
  30. btn_div.style.cssText += "background-color: #3D474B;border-top-style: solid;border-top-width: 1px;"
  31. btn.innerHTML = hidden_user_info_state ? "显示用户信息" : "隐藏用户信息";
  32. user_info.style.display = hidden_user_info_state ? "none" : ""
  33.  
  34. // 添加按钮事件
  35. btn.onclick = function () {
  36. hidden_user_info_state = !hidden_user_info_state
  37. GM_setValue("hidden_user_info_state", hidden_user_info_state)
  38.  
  39. user_info.style.display = hidden_user_info_state ? "none" : ""
  40. btn.innerHTML = hidden_user_info_state ? "显示用户信息" : "隐藏用户信息";
  41. }
  42.  
  43. // 将button节点添加到user_info的后面
  44. btn_div.appendChild(btn)
  45. nav.insertBefore(btn_div, user_info.nextElementSibling)
  46. })()