Нет загруженных фотографий в браузерах Mac? - PullRequest
0 голосов
/ 26 февраля 2011

Я полностью озадачен этим ... Используя плагины asyncUpload и swfUpload JS, чтобы пользователи загружали фотографию. После загрузки фотография отображается в небольшой области. Прекрасно работает на любом браузере Windows, но не на любом браузере Mac. Так странно. Я сузил это до этой части:

            // Called when upload completed successfully (puts success details into hidden fields)
            upload_success_handler: function (file, response) {
                $("input[name$=_filename]", container).val(file.name);
                $("input[name$=_guid]", container).val(response);
                $("span[id$=_completedMessage]", container).html("<img class='uploader' src='/public/assets/logos/{0}{1}' /><br />"
                            .replace("{0}", response)
                            .replace("{1}", file.type)
                        );
            },

Вот что говорит Firebug, сгенерированный в браузере Mac (в частности, FF 3.6.13):

<span id="photo_completedMessage" style="display: inline;">
<img class="uploader" width="0" height="0" src="/public/logos/66764b72-ad65-44b3-8c08-e74c24ee1356JPEG">
<br>
</span>

Итак, GUID генерируется, и это своего рода поиск типа файла? Но не помещая это как расширение или кое-что? Если я ввожу его вручную в Bug, он будет хорошо отображаться, поэтому он найдет изображение на сервере. Я потерялся. Помощь приветствуется. Опять же, это только на любом браузере Mac. IE, Chrome, FF, Safari в Windows работают нормально.

РЕДАКТИРОВАТЬ - Вот код Windows Firebug:

<span id="photo_completedMessage" style="display: inline;">
<img class="uploader" width="203" height="285" src="/public/logos/66764b72-ad65-44b3-8c08-e74c24ee1356.jpg">
<br>
</span>

1 Ответ

0 голосов
/ 26 февраля 2011

Как показано в документации:

http://demo.swfupload.org/Documentation/

File Object
The file object is passed to several event handlers.
It contains information about the file.
Some operating systems do not fill in all the values
(this is especially true for the createdate and modificationdate values).

{
id : string,            // SWFUpload file id, used for starting or cancelling and upload
index : number,         // The index of this file for use in getFile(i)
name : string,          // The file name. The path is not included.
size : number,          // The file size in bytes
type : string,          // The file type as reported by the client operating system
creationdate : Date,        // The date the file was created
modificationdate : Date,    // The date the file was last modified
filestatus : number,        // The file's current status. Use SWFUpload.FILE_STATUS to interpret the value. 
}

Переменная 'type' реализуется операционной системой / браузером.

Возможно, вам следует проанализировать "file.name" и найти его расширение.

Как получить расширения файлов с помощью JavaScript?

...