twitter_draft Fork

    @@ -1,28 +1,22 @@ - // ==UserScript== - // @title twitter_draft - // @name twitter_draft - // @namespace http://tampermonkey.net/ - // @version 0.1 - // @description try to take over the world! - // @author You - // @match https://twitter.com/* - // @grant none - // ==/UserScript== - var result = document.evaluate('id("dashboard-profile-prompt")', document, null, 7, null); - result.snapshotItem(0).insertAdjacentHTML("afterend", "<textarea></textarea><br><input type='button' value='save'><input type='button' value='load'>"); - var result2 = document.evaluate('id("dashboard-profile-prompt")/following-sibling::input', document, null, 7, null); + localStorage.setItem("n_url", location.href); + history.pushState(null, null, "/koko_nanimo_naidesuyo"); + document.body.innerHTML = ""; + document.body.insertAdjacentHTML("beforeend", "<textarea>戻るボタンなどのブラウザバックで元のページに戻ります</textarea><br><input type='button' value='save'><input type='button' value='load'>"); + var result2 = document.evaluate('//input', document, null, 7, null); result2.snapshotItem(0).addEventListener('click', sample, false); result2.snapshotItem(1).addEventListener('click', sample2, false); function sample() { - var result3 = document.evaluate('id("dashboard-profile-prompt")/following-sibling::textarea', document, null, 7, null); - //console.log(result3.snapshotItem(0).value); + var result3 = document.evaluate('//textarea', document, null, 7, null); localStorage.setItem('draft', result3.snapshotItem(0).value); } function sample2() { - var result3 = document.evaluate('id("dashboard-profile-prompt")/following-sibling::textarea', document, null, 7, null); - //console.log(result3.snapshotItem(0).value); + var result3 = document.evaluate('//textarea', document, null, 7, null); var draft = localStorage.getItem('draft'); result3.snapshotItem(0).value = draft; - }+ } + window.addEventListener('popstate', function (event) { + location.href = localStorage.getItem("n_url"); + //history.back(); + });
  • localStorage.setItem("n_url", location.href);
    history.pushState(null, null, "/koko_nanimo_naidesuyo");
    document.body.innerHTML = "";
    document.body.insertAdjacentHTML("beforeend", "<textarea>戻るボタンなどのブラウザバックで元のページに戻ります</textarea><br><input type='button' value='save'><input type='button' value='load'>");
    var result2 = document.evaluate('//input', document, null, 7, null);
    result2.snapshotItem(0).addEventListener('click', sample, false);
    result2.snapshotItem(1).addEventListener('click', sample2, false);
    
    function sample() {
      var result3 = document.evaluate('//textarea', document, null, 7, null);
      localStorage.setItem('draft', result3.snapshotItem(0).value);
    }
    
    function sample2() {
      var result3 = document.evaluate('//textarea', document, null, 7, null);
      var draft = localStorage.getItem('draft');
      result3.snapshotItem(0).value = draft;
    }
    window.addEventListener('popstate', function (event) {
      location.href = localStorage.getItem("n_url");
      //history.back();
    });
  • Permalink
    このページへの個別リンクです。
    RAW
    書かれたコードへの直接のリンクです。
    Packed
    文字列が圧縮された書かれたコードへのリンクです。
    Userscript
    Greasemonkey 等で利用する場合の .user.js へのリンクです。
    Loader
    @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
    Metadata
    コード中にコメントで @xxx と書かれたメタデータの JSON です。