あるCSVファイルを読み込んでテーブル表示する際、QRコードをjQueryで作成するため読み込みに時間がかかってしまいます。なのでよくあるgifのぐるぐるを表示したいのですが、表示されません。
デベロッパーツールで確認すると、ステータスがpendingのまま処理が進み、処理が終わるとfinishになりますがそれと同時に非表示になってしまいます。
テキストは表示されます。
再度別名のCSVをアップロードするとgifは読み込まれます。
試したこと
gifを2KBのもので試す。
CSSをHTMLに直書きする
「Disable cache」を「オン」
エラー?
gifに対して以下の様なエラー
Provisional headers are shown
読み込みタイミングがおかしい?
参考URL
https://webllica.com/jquery-now-loading/
HTML
1<form enctype="multipart/form-data" method="post"> 2 <input type="file" name="userfile" accept=".csv"> 3</form> 4<div id="csv"></div>
jquery
1$('input[type=file]').change(function () { 2 var file = $(this).prop('files')[0]; 3 var reader = new FileReader(); 4 5 dispLoading("処理中です<br>少々お待ちください..."); 6 reader.onload = function () { 7 removeLoading(); 8 //読み込み処理 9 } 10} 11 12function dispLoading(msg){ 13 // 画面表示メッセージ 14 var dispMsg = "<div class='loadingMsg'>" + msg + "</div>"; 15 // ローディング画像が表示されていない場合のみ出力 16 if($("#loading").length == 0){ 17 $("body").append("<div id='loading'>" + dispMsg + "</div>"); 18 } 19} 20 21/* ------------------------------ 22Loading イメージ削除関数 23------------------------------ */ 24function removeLoading(){ 25 $("#loading").remove(); 26}
CSS
1#loading { 2 display: table; 3 width: 100%; 4 height: 100%; 5 position: fixed; 6 top: 0; 7 left: 0; 8 background-color: #fff; 9 opacity: 0.8; 10} 11 12#loading .loadingMsg { 13 display: table-cell; 14 text-align: center; 15 vertical-align: middle; 16 padding-top: 140px; 17 background: url("8a33b035.gif") center center no-repeat; 18}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。