方針変更してみます。
user.jsをあまりいじらずにContentScriptとして実行させることに成功したのでw
手法について、わかる人だけわかればよい!的記法で説明します。
[1]mokoをExtension化する一番簡単な方法は以下の項をmanifest.jsonに記入すること。
"content_scripts":[
{
"matches":["http://*.sengokuixa.jp/*"]
,"exclude_matches":["http://sengokuixa.jp/*"]
,"js":["/js/sengokuixa-moko-2064.user.js"]
,"all_frames":true
,"run_at":"document_start"
}]
これはアイコン付ける事ができるだけであまりメリットはないw
[2]user.jsの中のmoko_main導入部分
function moko_main(){
<<moko_mainの定義>>
}
window.addEventListener("DOMContentLoaded", function() {
var scriptMoko = document.createElement("script");
scriptMoko.textContent = "(" + Moko_main.toString() + ")(j$);";
document.head.appendChild(scriptMoko);
document.head.appendChild(style);
});
これを書き換え、Moko_mainやCSS等をheadに取り込む部分を書き直して
取り込む中身と取り込み処理を別にしたのがcrxSpikeですね。
[3]headに取り込むのをやめて、Content ScriptでMoko_mainを実行させようというのが
私の方針です。
手作業でやりかけてましたがw、
IXA環境そのものを完こぴしてしまえば、Moko_mainをそのまま実行できるだろ・・・ということで
content_scripts":[{
(matches exclude_matchesの項は省略)
,"js":[
"Js/ORIG/prototype.js",
"Js/ORIG/jquery-1.3.2.js",
"/Js/jqueryConflict.js",
"Js/ORIG/common.js",
(中略)
"Js/ORIG/gronavi.js",
"/Js/Moko_main.js"
]
,"css":[
"/Css/ORIG/ui.tabs.css",
(中略)
"/Css/mokoMain.css"
]
,"all_frames":true
,"run_at":"document_idle"
}]
として、なんとか実行 に成功しました。
75のixa公式の関数の書き換えについては該当箇所をみつけてないので
対処してませんが・・・・オリジナルの*.jsや*.phpを切り取って対処すれば良いと踏んでます。
オリジナル部分対応は後回しとしし、ここまでやったものを数日内に公開します。