У меня есть простая функция javascript внутри $ (function () {.. .});
body
var uploader = new plupload.Uploader({
runtimes: 'html5,flash,silverlight',
browse_button: 'pickfiles',
container: 'uploader',
max_file_size: '20mb',
unique_names: true,
multiple_queues: false,
//drop_element: 'dropzone',
url: '/Home/Upload',
flash_swf_url: '../../../Scripts/upload/plupload.flash.swf',
silverlight_xap_url: '../../../Scripts/upload/plupload.silverlight.xap',
filters: [
{ title: "Image files", extensions: "jpg,gif,png" },
{ title: "Zip files", extensions: "zip" }
],
chunk_size: '2mb',
resize: { width: 320, height: 240, quality: 90 }
});
uploader.bind("Init", function (up, params) {
$("#runtime").html("Current runtime: " + params.runtime + "");
});
$("#uploadfiles").bind("click", function (e) {
uploader.start();
e.preventDefault();
});
uploader.init();
uploader.bind("FilesAdded", function (up, files) {
$.each(files, function (i, file) {
$('#runtime').append(
'' +
file.name + ' (' + plupload.formatSize(file.size) + ') ' +
'');
});
up.refresh();
});
uploader.bind("UploaderProgress", function (up, file) {
$("#" + file.id + " b").html(file.percent + "%");
});
uploader.bind("Error", function (up, file) {
$('#runtime').append("Error: " + err.code +
", Message: " + err.message +
(err.file ? ", File: " + err.file.name : "") +
"");
up.refresh();
});
uploader.bind("FileUploaded", function (up, file) {
$("#" + file.id + " b").html("100%");
});
и HTML-код
Logo:
No runtime was found !
Ошибка показана на следующем рисунке:
http://i.imgur.com/5t0sT.jpg (для просмотра в полном размере)
Я вижу здесь проблему с фильтрами файлов. Я запускаю примеры PLUpload.com в IE8, и он отлично работает со средой выполнения Flash.
В других браузерах мой загрузчик работает отлично. Кроме того, я установил последнюю версию Flash для ВСЕХ браузеров (IE8, FF9, Chrome 16), но проблема настаивает на IE8.
ПРОБЛЕМА ИСПРАВЛЕННАЯ:
не вставляйте объект загрузчика в div со свойством visibility: hidden
или display: none
.