OK、少し前に、画像のアップロード中にアニメーションの読み込みGIFが表示されないという質問を送信しました(PHP)。これで、画像のアップロード中にGIFを表示できるようになりましたが、IEとFirefoxでは、読み込み中のGIFが消えることはありません(および/理由は?)。フォームは送信されません。Chromeでは、GIFが消えて、フォームが送信されます。以下は私がやっていることです。
<!-- Validates form -->
<script type="text/javascript" src="jquery-1.8.0.js"></script>
<script>
function validationloading(){
// post box blank
var x=document.forms["livefeed"]["message"].value;
if (!$.trim($("#styled").val())){
document.livefeed.message.focus();
document.livefeed.message.style.border="solid 1px red";
alert("Cannot post a blank message.");
return false;
}
document.write("<table cellpadding='0' cellspacing='0' border='0' align='center' width='100%' height='130'><tr><td align='center' valign='center'><img src='images/ajax_loader.gif' width='50' height='50'></td></tr></table>");
return true
$("#myform").submit();
}
</script>
次の切り取りは、フォームからそれを呼び出すものです。
onSubmit="javascript: validationloading()"
戻り値の真の値をシャッフルしようとしましたが、結果は変わりますが、必要な方法ではありません。IEとFirefoxで送信されますが、読み込み中のGIFは表示されません。私のコードがスロップの山であることは知っていますが、それが私がここにいる理由です。
以下は3つのブラウザで100%動作します。皆さんの助けに感謝します。
<!-- validates form and displays loading gif -->
<script type="text/javascript" src="jquery-1.8.0.js"></script>
<script>
function validationloading(){
// post box blank
var x=document.forms["livefeed"]["message"].value;
if (!$.trim($("#styled").val())){
document.livefeed.message.focus();
document.livefeed.message.style.border="solid 1px red";
alert("Cannot post a blank message.");
return false;
}
//
document.livefeed.submit();
document.getElementById("gif_block").style.display="block"; //gif_block is the id of the div outside the image
document.getElementById('livefeed').style.display ='none';
return true;
}
</script>
GIFdivはこれです。
<div id="gif_block" style="display:none" align="center" ><p><image src="images/ajax_loader.gif" id="loader-img" width="50" height-"50" /></p></div>