1

首先,提前感谢您的任何建议。我到处寻找解决方案,但找不到任何东西。不可否认,Javascript 不是我的强项。

我正在使用fineuploader逐一上传文件并使用jQuery旋钮显示上传进度。该旋钮仅用于上传进度更新,不应交互。我可以设置它的样式,设置旋钮的大小完成百分比等,但我无法让它在中间显示上传百分比。

这是我的代码。

}).on('upload', function(event, id, name) {
    var progressField = $('#' + 'pic' + (id + 1)).parent();
    progressField = progressField.parent();
    var picName = $(progressField).children('label:first').html();
    $(progressField).attr("class", "uploaderBox");
    $(progressField).html('');
    $('.uploaderBox').html('<span class="picName">Uploading ' + picName + '...</span>');
    $(progressField).append('<div id="progressKnob"></div>');
    $("#progressKnob").knob({
                            "displayInput": true,
                            "thickness": .15,
                            "width": 70,
                            "fgColor": "#FF00FF",
                            "inputColor": "#000000"
                            });
}).on('progress', function(extra, id, name, uploadedBytes, totalBytes){
    var currentProgress = Math.round((uploadedBytes / totalBytes) * 100);
    $('#progressKnob')
        .val(currentProgress)
        .trigger('change');
}).on('complete', function(event, id, name, responseJSON){
    $('#progressKnob')
        .val(100)
        .trigger('change');
4

1 回答 1

5

经过多天的修补,我解决了自己的问题。我只是想我会把它贴在这里,以防其他人遇到与我相同的问题并需要答案。

首先,我必须为自己的错误承担责任。我试图将 jQuery 旋钮用于其预期用途之外的目的。我真的只希望它显示上传的进度。我无意用它来输入任何东西,所以我把它放在一个标准的 div 中。除了数字上传百分比之外,它在 div 中的所有内容都可以正常工作。我无法让它在圆圈的中心显示一个数字。

问题是它根本不打算放在 div 中。它不会接受“输入”值,因为它不是输入字段。一旦我将 .knob 分配给一个输入字段,一切就都顺理成章了。

对于以后读到这篇文章并发笑的任何人,我很高兴我逗你了。对于任何有帮助的人,嗯,这也很好。

于 2013-06-03T00:24:51.133 回答