0

こんにちは、Firefox で動作するように、このアップロード進行状況バーを修正する方法を見つけようとしています。

Firefox では、Chrome で約 90% しか進みません。進行状況は 100% で表示されます。

どんなアイデアでも大歓迎です

*乾杯

編集これはjQueryフォームプラグインhttp://jquery.malsup.com/form/を使用していることに言及する必要があります

編集何をしたかわかりませんが、ステータスを99%に設定し、Firefoxで100%にする方法を考えています:-)

以下のコードを更新しました

以下のコード

<style>
<!--
/*form {display: block; background: #333; padding: 15px}*/

.progress {margin-left:auto; margin-right: auto; position:relative; width:400px; border: 1px solid #ddd; padding: 1px; border-radius: 3px;}
.bar {margin-left:auto; margin-right: auto;background-color: #B4F5B4; width:0%; height:20px; border-radius: 3px; }
.percent {position:absolute; display:inline-block; top:3px; left:48%;}
-->
</style>

そしてjQuery

        <div class="progress">
        <div class="bar"></div >
        <div class="percent">0%</div >
    </div>
    <div id="status"></div>


<script type='text/javascript'>
<!--  

jQuery('document').ready(function() {
    var bar = $('.bar');
    var percent = $('.percent');
    var status = $('#status');   
        $('form').ajaxForm({
            dataType: 'script',
            url: "{{=URL('default', 'user_song_form')}}",
            beforeSend: function() {
                status.empty();
                var percentVal = '0%';
                bar.width(percentVal)
                percent.html(percentVal);
            },             
            uploadProgress: function(event, position, total, percentComplete) {
                var percentVal = percentComplete + '%';
                bar.width(percentVal)
                percent.html(percentVal);
            },
            complete: function(xhr) {
                status.html('Thank You Upload Complete!');
            }     
        });         
   });     
-->

</script>
4

3 に答える 3

2

最も簡単な方法は、私がお勧めするアップローダーを使用することです

http://fineuploader.com/

それについてのクールな点は、必要な外部依存関係がないことです

ここに画像の説明を入力

于 2013-01-07T05:39:16.463 に答える
1

完全な機能を変更することで、アップロードステータスで発生していた問題を修正しました

jQuery コードは次のようになります。

<script type='text/javascript'>
<!--  

jQuery('document').ready(function() {
    var bar = $('.bar');
    var percent = $('.percent');
    var status = $('#status');   
        $('form').ajaxForm({
            dataType: 'script',
            url: "{{=URL('default', 'user_song_form')}}",
            beforeSend: function() {
                status.empty();
                var percentVal = '0%';
                bar.width(percentVal)
                percent.html(percentVal);
            },             
            uploadProgress: function(event, position, total, percentComplete) {
                var percentVal = percentComplete + '%';
                bar.width(percentVal)
                percent.html(percentVal);
            },
            complete: function(xhr) {
                var percentVal = '100%';
                bar.width(percentVal)
                percent.html(percentVal);
                status.html('Thank You Upload Complete!');
            }     
        });         
   });     
-->

</script>
于 2012-07-07T20:51:24.660 に答える
0

代わりに、uploadify の使用を検討してください。非常にうまく機能し、IE と Firefox で 100% 動作します

http://www.uploadify.com/

于 2012-07-07T16:06:27.677 に答える