MonacaのInappbrowserのエラーを遅延ロードで回避
モナカに大きなプロジェクト(長いjsファイルやエラー前提のシステム)を入れるとプラグインがうまく応答しないことがある。
これは憶測なので違ったら指摘して欲しいけど、プラグインが動かない原因はこれ
①仕様上devicereadyイベント発火ではじめてプラグインが使用可能
②devicereadyイベントまでに、jsファイルのロードが掛かり過ぎるORエラーが起こると、発火しないもしくは、プラグインのjsが作動しなくなる
というわけでバカでかいプロジェクトをそのままindex.htmlに直接書いたりロードするとうごかなくなりました。
そこで<script src="js/bakadeka.js"></script>と書いて読み込んだファイルを以下に変更
<script src="src/jquery.min.js"></script>
<script>
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
$.getScript("js/bakadeka.js")
}
<script>
何をしたかというと、ondevicereadyでプラグイン使用可能を確定したうえで、そのあとjsファイルを読み込んだ。(jqueryは各自でダウンロードしてコピペ+アップしてください)
ちなみにhtmlも遅延ロードしてみたが、うまく表示されなかったので諦めた。