gotin blog

Whatever gotin wanna write

人の存在をなんとなく感じるためのGreasemonkeyスクリプト

他人のマウスカーソルの位置がある程度リアルタイムに分かるようになるスクリプトです。
↓こちらです
mouse_lingr.user.js

f:id:gotin:20070304030115p:image

※スクリプト更新しました。
最新版はこちらです。

使い方

  1. mouser_lingr.user.jsをインストールする
  2. 適当な、フレームを使っていないページにアクセスする
  3. Shiftキーを押しながらMを押す
  4. しばらーくすると自分のマウスカーソル付近にへんなアイコンが現れます
  5. 他の人も同じことをしていると、同じ形の別のへんてこアイコンが、同じことをしている人の数だけ現れます(←これが一番大事なのに書き忘れていました><)

もう一度Shift+Mをすると機能offになります。
なお、機能on/offの状態は別のページに移動しても保たれますのでご注意ください。



仕組み
スクリプトの名前からもわかるとおりlingrを使わせてもらってます。
マウスカーソルが動いたときにその位置をlingrに発言しています。
そして誰かの発言を読んだら、そこに書いてある位置情報に従ってへんなアイコンを表示し動かしている、という感じです。

ちなみにそのlingr部屋はこちらです。
発言を見ると二つの数字がズラズラーっと並んだものばかりなことがわかると思います。それらの数字はマウスカーソルのx,y座標を示しています。その値に従ってへんなアイコンの位置を少しずつずらしながら表示することで移動しているように見せている、というわけです。



その他
最初はどのページにいるか分かるようにURLも発言させて、同じページにいる人のアイコンだけ表示するようにしようと思ったんですが、きっとユーザは少ないに違いないのでとりあえずURLは発言しないようにして、どのページでも同じように表示するようにしました。
どのページにいるかわかっちゃうのは抵抗もあるでしょうし。
それと、lingrのID、パスワードを設定するとlingrに設定してあるアイコンをへんてこアイコンの代わりに表示するようにしていたんですが、これもプラバシー保護の観点から機能をはずしました。

TODO

  • 退室(利用停止)した人のアイコンを消去する
  • 接続状態を分かりやすく表示(現状はステータスバーにのみ表示)
  • 自分とその他の人のアイコンを区別して表示
  • ページ全体(スクロール分も含む)だと広すぎるので表示している画面内だけにとどめた方がいいかも
  • ↑これに関連して、lingrのページで使った場合に、下の方にアイコンが移動するとメッセージをうまく読めなくなってしまう。。なので画面内だけにとどめるのがやっぱり良さそう