[CityU] Add a link to open embedded frame in Canvas in a new tab

A link to open Zoom and Some External tools in a new tab will be generated at the top right corner.

目前为 2021-11-02 提交的版本。查看 最新版本

  1. // ==UserScript==
  2. // @name [CityU] Add a link to open embedded frame in Canvas in a new tab
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.4
  5. // @description A link to open Zoom and Some External tools in a new tab will be generated at the top right corner.
  6. // @author You
  7. // @match https://canvas.cityu.edu.hk/courses/*
  8. // @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
  9. // @grant none
  10. // ==/UserScript==
  11.  
  12. (function() {
  13. 'use strict';
  14.  
  15. var init = () => {
  16. var ele = document.getElementsByClassName("right-of-crumbs")[0]
  17.  
  18. var newele = document.createElement("a");
  19. newele.innerHTML = "Open the embedded frame in a new window";
  20.  
  21. var iframe = document.getElementsByTagName("iframe")
  22.  
  23. var src = iframe[iframe.length - 1].src;
  24.  
  25. if(src == "about:blank"){
  26. return;
  27. } else{
  28. newele.href = src;
  29. ele.appendChild(newele)
  30. }
  31.  
  32.  
  33. }
  34.  
  35.  
  36. var initZoom = () => {
  37. var toolForm = document.getElementById("tool_form")
  38.  
  39. if(toolForm){
  40. var ele = document.getElementsByClassName("right-of-crumbs")[0]
  41. var newele = document.createElement("a");
  42. newele.innerHTML = "Open the embedded Zoom frame in a new window";
  43. newele.src = toolForm.action
  44. ele.appendChild(newele)
  45.  
  46. }
  47. }
  48.  
  49.  
  50. window.addEventListener("load", () => {
  51.  
  52. init();
  53. initZoom();
  54. })
  55.  
  56.  
  57.  
  58. })();