和田憲幸のブログ

札幌市白石区在住、個人事業のWebエンジニア 和田憲幸(45歳)のブログです。

別タブが開かれたらスクリプトを実行

タブブラウザしかないこんな世の中はポイズン。

2011-07-30 21:26:51
入力時間 / 07:34

たまにはマジメな事を書くという噂で持ちきりの和田です。マジメな事を書かせて下さい。

タブブラウザ時代になり、多くの人が馬鹿みたいに膨大な数のタブを同時に開くことが当たり前になりましたよね。そんなこんなで他のタブ(女)のところに行ってしまった閲覧者(男)がまた戻ってきてくれた時に、なにかしらサプライズを用意しておきたい。そんな乙女心を叶えるためのスクリプトです。今のところFirefoxとChrome限定ですが。

タブがバックグラウンドになった時、JavascriptのsetTimeoutの下限が1000ミリ秒に変更されることは皆さんもご存知だと思いますが、500ミリ秒毎にチェックするスクリプトを動かしておいて、それが1000ミリ秒になったらタブが裏側にまわった合図です。そこでスクリプトを実行するという仕組み。

省電力化、低負荷化を促進していく過程でIEやSafariもこの仕組は対応してくるでしょう。なので現状はFirefoxとChromeのみですが、たぶんそのうち他のブラウザでも動くようになると信じています。というかこんな面倒なことしなくても標準実装もうされてるかもしれませんけどね。私が知らないだけで。

用途

「閲覧者が他のタブを開いた」という事、「現状、タブが隠れている」という2つの事実があるわけです。そして「また戻ってきた」時に閲覧者に対してどういうユーザエクスペリエンスを提供するかって事が鍵になります。

まぁ私は嫌いですけど広告を出すもよし、「おかえりなさい★」と言うもよし。高負荷なスクリプトを停止させて置くもよし。ということでいろいろと使い道はあると思います。何か思いついたら使ってみてね。

タブチェック デモ ※このタブを開いて、別タブを開いて少ししてから戻ってみてね。
タブチェック ダウンロード

P.887