TwitterのHomeを開いていると,新たな更新があるとき,3 new tweets.みたいなのが表示されて,クリックすると表示される.
これを一日中クリックし続けるのは指が疲れるので,自動的にクリックさせるようにしてみた.
Twitterで「新着何件」みたいなボタンが出た瞬間にクリックする — Gist
// ==UserScript== // @name click-new // @namespace http://www.hatena.ne.jp/hitode909 // @include http://twitter.com/* // @include https://twitter.com/* // ==/UserScript== setInterval(function() { var button = document.querySelector("#results_update"); if (!button || button.style.display == "none") return; var evt = document.createEvent("MouseEvents"); evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); button.dispatchEvent(evt); }, 1000);
上記のように,clickイベントを作ってelementにdispatchすると,クリックしたことにできるのだけど,引数が多くてめんどくさい.
jQueryを使えば,trigger("click")だけでできる.
これを,
var button = document.querySelector("#results_update"); if (!button || button.style.display == "none") return; evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); button.dispatchEvent(evt);
こう書ける.
$("#results_update:visible").trigger("click");