FireGesturesのユーザスクリプト 2012-06-21 (Thu) 22:21

この前のブックマークレットだが、やはりJavaScriptが無効のページで使えないのではおもしろくないので、
FireGesturesのユーザスクリプトとして登録した。

その際に注意が必要なのは、ブックマークレットとFireGesturesのユーザスクリプトではdocumentが指すオブジェクトが違っているところ。
例えば、ブックマークレットで alert(document.location.href)を実行すると開いているページのアドレスが表示されるけど、FireGesturesのユーザスクリプトで同じことをやると chrome://browser/content/browser.xul が表示される。
FireGesturesのユーザスクリプトでブックマークレットで指してる document を参照するには、

var doc = window.content.document;

としたときの doc を使えばよいようだ。

var doc = window.content.document;
var style = <![CDATA[
* {
background-color: white!important;
background-image: none !important;
color: black !important;
}
]]>.toString().replace(/\s+/g, " ");
var ss = doc.createProcessingInstruction(
'xml-stylesheet',
'type="text/css" href="data:text/css,' + escape(style) + '"'
);
doc.insertBefore(ss, doc.documentElement);
ss.getAttribute = function(name) {
return doc.documentElement.getAttribute(name);
};
(2012/06/24 修正)

関連記事

コメントの投稿

管理者にだけ表示を許可する

注意事項
基本的にこのブログはブログ主の備忘録です。

ブログの内容にはブログ主の主観や時には正確でない情報が含まれていることもあります。書いてある内容がすべての環境にあてはまることを保証するものでもありません。

また、過去の記事は現時点で既に陳腐化していることもあります。

その辺をご理解の上で当ブログ内に書いてあることを試す場合は自己責任でお願いします。

記事内容の誤りの指摘、疑問点の回答などコメント頂けると助かります。
カレンダー
07 | 2017/08 | 09
- - 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 - -
ブログ内検索
カラーコードチェッカ
カラーコードの確認
入力例) #ffffff | blue
カテゴリ
最新記事
最新コメント
最新トラックバック
リンク
ブロとも申請フォーム

この人とブロともになる

メールフォーム

名前:
メール:
件名:
本文: