デバイスを回転させるたびに、カスタムpdfリーダー(html 5)をリロードするためのロードスピナーを表示します。これはAndroidデバイスでうまく機能し、デスクトップデバイスで回転をシミュレートすると、iPadでスピナーが表示されません。まるで、スピナーを表示する/ pdfリーダーをリロードする/スピナーを非表示にするアクションが、「ワンショット」。スピナーが表示されるまでPDFの再読み込みを遅らせようとしましたが、同じことです。アクションのシーケンスは次のとおりです。
window.onorientationchange = function() {
launchSpinnerThenRotate();
}
function launchSpinnerThenRotate(){
alert(" i'll launchSpinnerThenRotate");
showSpinner();
setTimeout(rotatePdfReader(),1000);
}
js関数とjquery関数の両方を試して、スピナーを常に同じ効果で表示/非表示にしました
function showSpinner(){
//$('#pdfReaderSpinner').css("visibility" , "visible");
document.getElementById('pdfReaderSpinner').style.visibility = "visible";
document.getElementById('pdfReaderSpinner').style.zIndex = 100000000;
}
問題はスピナーにあるとは思いません。ページを最初に起動したときに正しく表示できますが、document.ready関数でスピナーを表示する必要がありました。
$(document).ready(function() {
var target = document.getElementById('loadingSpinner');
spinner = new Spinner({top: 0, left: 0,color:'red'}).spin(target);
showSpinner();
});
$(window).load(function(){
initPdfReader();
hideSpinner();
});