備忘録
I.PI更新停止後時間経過しており、一部が機能しない
1. @require jquery : 機能せず
2. @require path : 機能せず
どうしても使いたければ外部ファイル化
→appendChildして追加
→読み込みに時間を要するため、
→ページ読み込み後に自動実行されるスクリプトには向かず
→interval関数などで読み込みまで待つ処理が必要
3.@requireはGMとは互換性なし。GM関数の指定不可
II.仕様
1. @require api-notification
→アイコンはヘッダで指定したもののみ。
→コードからの動的変更不可
2. @icon 'data:image/png;base64,~~~’は不要。
3. @require file:///C:\Users\~~~\Sleipnir_Extension/extension.slex.js
→上記のような指定不可
4. //でのコメントは不可。/* */は可
不便
III.一部処理がChromeと異なる
1.改行ありのテキストを取得する方法
古の方法らしい
function(){/*
ここに記載
}
*/}.toString().match(/\n([\s\S]*)\n/)[1];
→Sleipnirだと、toString()で改行が無視される様子。
→このためmatch(/\n/)がエラーとなる
→解決としては下記を利用する
①外部ファイル化
②バッククォート ` (ECMAScript 2015 (ES 6))
③evalは推奨されない
IV. JSON
1. 予約文字のためエスケープが必要なのは下記
\"(ダブルクオーテーション)
\\(バックスラッシュ)
\/(スラッシュ)
\b(バックスペース)
\f(改ページ)
\n(改行)
\r(キャリッジリターン)
\t(タブ)
2. →コメントは不可
V. Dropboxからのインストール
1.ファイルのurlリンクの末尾を、”dl=1”に変更する(ダウンロード)
2.”dl=0”は(ブラウザIでテキストエディタ起動)
3.https://dl.dropboxusercontent.com/s/~~/~~.slex.jsも使用可
VI. Dropboxからのsrc読み込み
※検証の際には読み込みの完了待ちの操作を行っていなかった。(知らなかった)
→使用できる可能性はある。
3.https://dl.dropboxusercontent.com/s/~~~/~~.jsに変更してもアクセスできず
4.raw=0 使えず
5.GreaseForkなどを利用するしかない?
VII.Blocklist(JSONファイル)の置き場所
1.WeDataが望ましいか
→OpenIDが必要
google.hanenaなど多くのサイトがサービス停止
2.自分でサーバ
その他. ※Chromeで開発するのが楽
1.拡張機能管理→TamperMonkey
ファイルの URL へのアクセスを許可する
2.TamperMonkeyエディタ→設定→セキュリティ
スクリプトによるローカル ファイルへのアクセスを許可する
3.Wrapper使用してローカルファイルから読み込み
→GM関数使用するならWrapperにgrantで指定
→@require "file:///"
外部ファイル→本体の順に読み込むようにする