Introduction

ブログ内検索

  • このサイトの記事を検索 by Google

おすすめの一冊!

無料ブログはココログ

« topcoder はとおい | トップページ | TopCoder の「探索」 »

2010-02-04

ぐりもん on Google Chrome

数日前、Google Chrome がグリモン (GreaseMonkey) に対応した、
とのニュースが流れました。

    
    Google ChromeがGreasemonkeyスクリプトをネイティブサポート
     - INTERNET Watch
    http://internet.watch.impress.co.jp/docs/news/20100202_346437.html


ネイティブ対応なので、プラグイン不要なのがうれしいところです。
JavaScript の動作速度に定評のある Chrome なので、高速化も期待大。

「15~25% のスクリプトが Google Chrome で動作しないと予測している」
らしいので、さっそく自作ぐりもんの動作確認・・・・

 ・・・

 ・・・・・

 ・・・・・・・・・



Seaoak の自作ぐりもんは6個あるのですが、
そのうち1個しかまともに動いてくれませんでした orz

動かない率 83%。




調べてみると、グリモン独自関数(GM_getValue() などの GM_* 系の関数)が
ちゃんと動いてくれていないみたいです。

しかも、それらの関数を typeof すると、ちゃんと "function" が返ります。

つまり、「実装しているフリだけして実は実装してない」という最悪のパターン・・・。




しかたがないので、グリモン独自関数の代わりに HTML5 の新機能を使うことにしました。

GM_getValue() / GM_setValue() については、HTML5 の Local Storage という新機能で
同等のこと(サイトごとのデータの永続化)が可能になるみたいです。
で、Firefox も Google Chrome も Local Storage をサポートしているらしいので、
とりあえず置換してみたところ、一部のスクリプトが期待通りに動作するようになりました。

    ⇒ Google Chrome に対応した「AddFooterIntoTweet」


HTML5 の Local Storage については次のサイトを参考にさせていただきました↓

    ⇒ CONIT Labs.: コニットブログ::HTML5で遊んでみる その2 Web Storage


GM_xmlhttpRequest() についても、HTML5 の Web Socket という新機能で置換できれば
Google Chrome でも動くようになるかもしれないので、ちょっと調べてみます。
これが動かないとグリモンの一番面白い特長が生かせないので・・・

« topcoder はとおい | トップページ | TopCoder の「探索」 »