$shibayu36->blog;

株式会社はてなでエンジニアをしています。プログラミングや読書のことなどについて書いています。

twitter通知に自動でタイトルを入力するスクリプトをその場編集に対応させた

はてなダイアリーの編集時に、見出しが自動的にtwitter投稿の欄にコピーされるgrease monkey作った - Dive into the Tech World!で作ったgrease monkeyスクリプトが、その場編集のときにtwitterへの通知の欄をクリックしたときに、入力している内容が消えてしまうというバグがあったので直しました。

技術的な事

今回の場合、twitterの通知入力欄にfocusしたとき、最初の一回は中に入力されている内容を消すという仕様になっていたため、このようなバグが起こりました。なので次のようにして、擬似的にfocusイベントを起こしました。

element['focus']();

擬似的にイベントを起こす方法は、いくつかあって、focusの場合は上のようにやればいいみたいです。他にも、dispatchEventを使うやり方もあるみたいですが、よくわかってないのでまたまとめようと思います。