/ / jQuery Mobileで `paginit`を使って外部のJavascriptファイルを読み込むにはどうすればいいですか? - jquery、jquery-mobile

jQuery Mobileで `paginit`を使って外部のJavascriptファイルをロードするにはどうしたらいいですか? - jquery、jquery-mobile

私が更新をヒットしない限りスクロールバーはロードされていません。私はこれをjQuery Mobileを使って修正できると思います pageinit。これが私が試したことです。

$("#summaryPage").live("pageinit", function(){
$.getScript("cubiq-iscroll-bad88fb/src/iscroll.js");
});

サイコロはありません。何か案は?

回答:

回答№1は2
var jsonp = document.createElement("script");
jsonp.type = "text/javascript";
jsonp.src = "cubiq-iscroll-bad88fb/src/iscroll.js";
document.getElementsByTagName("body")[0].appendChild(jsonp);

これはうまくいくはずです。.jsがエラーなしでうまくいくならば。


回答№2の場合は1

あなたが試すことができます:

<script>
$("#summaryPage").live("pageinit", function(){
var oHead = document.getElementsByTagName("HEAD").item(0);
var oScript= document.createElement("script");
oScript.type = "text/javascript";
oScript.src="other.js";
oHead.appendChild( oScript);
});
</script>

回答№3の場合は1

ページが表示される前に実行してみてください。

$("div:jqmData(role="page")").live("pagebeforeshow",function(){
$.getScript("cubiq-iscroll-bad88fb/src/iscroll.js");
});

jQuery mobile $(document)。すでに同等のもの


回答№4の場合は1

.liveは廃止予定になるので、

$(document).on("pageinit", "#summaryPage", function(){
//append head element and custom script
});

それはあなたがあなたのをロードしているということかもしれませんスクリプトが遅すぎます。当然、私があなたであれば、ドキュメントやデバイスの準備ができたらすぐにそれを実行し、その後ページが表示されたら要素が存在するかどうかを確認し、存在しない場合はcreateをトリガーします。あなたがjqueryモバイルAPIで聞くことができるイベントもあります。 pagebeforecreate

あるいは、それでもなお名前を付けずにコードをグローバル関数に入れてください。

function(){
//append your script here
}

APIでjquery.comのドキュメントを読むことができます。