Gmailのパーマリンク取得

  • /*
     * @title Gmailのパーマリンク取得
     * @description ブックマークレットを使ってからメールスレッドやタイトルなどをクリックしてください
     * @include https://mail.google.com/
     * @license CC0
     * @javascript_url
     */
    
    
    {
      const targetDataAttributeNames = [
        "data-legacy-last-message-id",
        "data-legacy-message-id",
        "data-legacy-thread-id",
      ]
    
      alert('パーマリンクを取得するメールをクリック')
      console.log('test')
      document.documentElement.addEventListener('click', e => {
        const target = e.target;
        let id;
        for (const targetDataAttribute of targetDataAttributeNames) {
          if (target.getAttributeNames().includes(targetDataAttribute)) {
            id = target.getAttribute(targetDataAttribute);
            break;
          }
          if (target.closest(`[${targetDataAttribute}]`)) {
            id = target.closest(`[${targetDataAttribute}]`).getAttribute(targetDataAttribute);
            break;
          }
        }
    
        prompt('パーマリンク', `https://mail.google.com/mail/u/0/#all/${id}`)
    
      }, { once: true })
    }
    
  • Permalink
    このページへの個別リンクです。
    RAW
    書かれたコードへの直接のリンクです。
    Packed
    文字列が圧縮された書かれたコードへのリンクです。
    Userscript
    Greasemonkey 等で利用する場合の .user.js へのリンクです。
    Loader
    @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
    Metadata
    コード中にコメントで @xxx と書かれたメタデータの JSON です。

History

  1. 2023/12/19 18:52:57 - 2023-12-19
  2. 2023/12/19 18:52:18 - 2023-12-19
  3. 2023/12/05 17:47:46 - 2023-12-05
  4. 2023/01/27 17:05:47 - 2023-01-27