A barra de rolagem não está carregando a menos que eu clique em atualizar. Suponho que isso pode ser corrigido usando jQuery Mobile "s pageinit
. Isso é o que eu tentei:
$("#summaryPage").live("pageinit", function(){
$.getScript("cubiq-iscroll-bad88fb/src/iscroll.js");
});
Sem dados. Alguma ideia?
Respostas:
2 para resposta № 1var jsonp = document.createElement("script");
jsonp.type = "text/javascript";
jsonp.src = "cubiq-iscroll-bad88fb/src/iscroll.js";
document.getElementsByTagName("body")[0].appendChild(jsonp);
isso deve funcionar bem.Se o .js funcionar sem erros.Espero que isso ajude.
1 para resposta № 2
Podes tentar:
<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>
1 para resposta № 3
Tente executá-lo antes que a página seja exibida:
$("div:jqmData(role="page")").live("pagebeforeshow",function(){
$.getScript("cubiq-iscroll-bad88fb/src/iscroll.js");
});
jQuery mobile $ (document) .ready equivalente
1 para resposta № 4
já que .live será descontinuado, você também pode
$(document).on("pageinit", "#summaryPage", function(){
//append head element and custom script
});
Também pode ser que você esteja carregando seuscripts tarde demais, naturalmente se eu fosse você faria isso imediatamente assim que o documento e / ou dispositivo estivesse pronto, e então quando a página entrasse verificaria se o elemento existe e caso contrário, acionaria criar. Também há eventos que você pode ouvir na API do jquery mobile, por exemplo, pagebeforecreate
Ou melhor ainda, coloque o código em uma função global sem um nome:
function(){
//append your script here
}
você pode ler a documentação em jquery.com na API