QA@IT

GitHub のページで "?w=" を付与するブックマークレットを動作させるには/ Firefox の https なサイトでの bookmarklet 問題

3957 PV

GitHub では、URL 末尾に "?w=" を付与すると、diff からスペースのみの変更行を除去できます。
"?w=" は覚えられないため、次のような Bookmarklet を作成したのですが、GitHub のサイトでは動きません。

javascript:location.href=location.href+'?w='

質問は以下の 3 件です。どれか1つでも、ご回答をいただけると嬉しいです。

  1. 何が原因なのでしょうか
  2. かんたんな対策はあるでしょうか
  3. たしかにこのような、外部のJS/bookmarklet を禁止する機能があると有益なこともあると思います。どう実現しているか、検討がようでしたら、実装方法の概略を知りたいです。

参考URL

回答

ぼくの手元だと上記bookmarklet動きます!
OSX 10.9.1 Chrome 33.0.1750.117

ここで実行すると
https://github.com/sanemat/tachikoma/pull/79/files
ここにいく
https://github.com/sanemat/tachikoma/pull/79/files?w=

何かが阻んでいるのでは。

編集 履歴 (0)
  • Chrome で動くとのこと、情報ありがとうございます!
    環境情報の記載を忘れておりました。
    私は Firefox 27 を使っています。
    いただいた情報をヒントに調べたので、自分で回答しておきます!
    QA@IT のコメント200文字制限のため。
    -

http://qa.atmarkit.co.jp/q/3514#answer_16355 でいただいた情報をキーワードにして調べると、
Fifefox では、https なページに対するブックマークレートが CSP というセキュリティレイヤによって、動かないようです。
これをブラウザの設定で、無効にしたいのであれば、 about:config から security.csp.enable を false にするとよいようでした。

編集 履歴 (1)
ウォッチ

この質問への回答やコメントをメールでお知らせします。