greasemonkey用のコードを書いている時、ページ内のform要素が取得できない、という状況に遭遇しました。
いろいろ試してみたんですが、どうしてもform要素がundefinedになってしまいます。
そこでググってみたところ、こちらの記事を発見。
http://d.hatena.ne.jp/hysa/20090813/1250175628
解決方法はこの記事のコメント欄にあります。
とりあえず unsafeWindow.document.form... としてこの場は乗り切りました。
2011年4月11日月曜日
2011年4月8日金曜日
chromeでgreasemonkey(ユーザースクリプト)を使う
firefoxでgreasemonkeyをよく使ってるんですが、chromeでも使えることを最近知りました。
なおchromeではgreasemonkeyの呼称ではなく、ユーザースクリプトと呼びます。
さっそく試してみました。
インストールは、
・Web上で公開されてるユーザースクリプトをダウンロードする
・ローカルのユーザースクリプトをchromeにドラッグ&ドロップする
だけ。簡単です。
インストールしたスクリプトは、WinXPだと以下のフォルダに格納されます。
C:\Documents and Settings\ユーザー名\Local Settings\Application Data\Google\Chrome\User Data\Default\Extensions
試しにfirefoxで使っている自作のスクリプトをインストールしてみましたが、chromeでも問題なく動きました。
ただ、greasemonkeyとはけっこう違いがあります。
特に自分の場合困るのは「@requireなどのgreasemoneky独自の機能がない」という点。
jqueryをrequireして使ってるスクリプトが動かなくなってしまうので、書き直しが必要になってしまいます。
このあたり、今後改善されてくるといいんですが、当分は各ブラウザを使い分けて対応するしかないですね。
なおchromeではgreasemonkeyの呼称ではなく、ユーザースクリプトと呼びます。
さっそく試してみました。
インストールは、
・Web上で公開されてるユーザースクリプトをダウンロードする
・ローカルのユーザースクリプトをchromeにドラッグ&ドロップする
だけ。簡単です。
インストールしたスクリプトは、WinXPだと以下のフォルダに格納されます。
C:\Documents and Settings\ユーザー名\Local Settings\Application Data\Google\Chrome\User Data\Default\Extensions
試しにfirefoxで使っている自作のスクリプトをインストールしてみましたが、chromeでも問題なく動きました。
ただ、greasemonkeyとはけっこう違いがあります。
特に自分の場合困るのは「@requireなどのgreasemoneky独自の機能がない」という点。
jqueryをrequireして使ってるスクリプトが動かなくなってしまうので、書き直しが必要になってしまいます。
このあたり、今後改善されてくるといいんですが、当分は各ブラウザを使い分けて対応するしかないですね。
登録:
投稿 (Atom)