Twitterのモーメント内の記事件数を表示するグリモンスクリプト
うおおおおギャオオオオオ 「Twitterのモーメント内の記事件数を表示するグリモンスクリプト」が出来たぞおおおおおおおおおおおお
Twitterのモーメントは複数のつぶやき(ツイート)をかき集めてまとめられる機能なんだけど、まとめたつぶやきの数が100件を越えると古いつぶやきから密かに消えていく上に、現在何件追加されているかは自分でひとつひとつ数えないと分からないというハイパーゴミ仕様なんですよ。
せめて現在の登録つぶやき数がぱっと分かれば…という考えから作り出されたのがこのグリモンスクリプト。
// ==UserScript== // @name Twitterモーメント内記事件数表示 // @namespace Twittermomentcount // @description モーメント内の記事件数を表示する // @include https://twitter.com/i/moments/* // @version 1 // @grant none // @require http://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js // ==/UserScript== (function($){ var twtct = $('div.ProfileTweet-actionCountList.u-hiddenVisually').length; var dai = document.getElementsByTagName('h1')[1]; dai.outerHTML += '<div>'+twtct+' 件の記事</div>'; })(jQuery);
上記のスクリプトをグリモンに追加すると、ちょっとなんか不恰好だけどモーメントタイトルの真下に小さな字で「○件の記事」と表示されます。
あれ 動かないぞ
間違えなくモーメントを開いてスクリプトがアクティブになっているのに件数が表示されない…という場合は、ページをリロードすると件数が表示される…はず。
多分jQueryの読み込みがうまくいってないんじゃないかなあ。せめてその際のエラー表示できるようにしたいですね。
Chromeで使えないの?
あれ? GreasemonkeyってFirefox用だったの? Chromeでも使えた気がしたけど…
調べてみたら、ChromeはTampermonkeyっていう拡張機能がぐりもんの代わりに使えますね。
試してみたら普通にこのスクリプトも動いてくれました。
参考にした記事
- クラス名にスペースがある時はどうするんだ?
- スペースを含んだクラス名を jquery で指定できない - スタック・オーバーフロー
- ページ内要素を数える
- JavaScript - 表示中の要素の個数を取得したい|teratail
- GreasemonkeyでjQueryを使う
- greasemonkey内でjQueryを使う - $shibayu36->blog;
- .innerHTML(タグで囲った要素の置き換え)
- Tampermonkey(またはGreasemonkey)を使ったJavaScriptプログラミング | | 株式会社シンメトリック公式ブログ
- .outerHTML(タグの外への追記)
- .outerHTML | JavaScript 日本語リファレンス | js STUDIO
変更履歴
- 2018/06/11
- できたのでここに置く
- 2018/06/12
- Chromeの案内を雑に書く
- 2018/06/19
- 何故か件数が表示されない場合の対処法を書く