FileReader не работает на iOS 8

Я не могу заставить FileReader работать в iOS 8. Следующая демонстрация иллюстрирует это (ссылка jsFiddle для iOS – http://jsfiddle.net/gys6rubg/1/ ):

var file = document.getElementById('file-input'); file.addEventListener('change', function(event) { var file = this.files[0]; if(!file) { alert('No file'); return; } var reader = new FileReader(); var timeout = setTimeout(function() { alert('FileReader not functioning'); }, 500); reader.onload = function(event) { clearTimeout(timeout); alert('Base64 length - ' + event.target.result.length); }; reader.readAsDataURL(file); }); 
 <form> <input id="file-input" type="file" /> </form> 

Этот console.log – длина строки Base64 в большинстве браузеров, но на iOS 8 Safari – это не работает файл FileReader от console.log.

Есть ли способ обойти это или что-то, что я делаю неправильно?

это ошибка

должны быть исправлены в следующей версии

У меня такая же проблема с Safari на iPhone (но проблемы нет в Chrome для iPhone!).

Если вы добавите обработчик событий ошибки:

 reader.onerror = function (e) { alert("error " + e.target.error.code + " \n\niPhone iOS8 Permissions Error."); } 

вы получите код ошибки 4. Согласно HTMLGoodies – ответ на события HTML5 FileReader

Код ошибки 4 = NOT_READABLE_ERR: Файл не может быть прочитан из-за изменения прав доступа, поскольку файл был получен – вероятно, потому что файл был заблокирован другой программой.

  • Является ли производительность UIWebview JS медленнее, чем мобильное сафари на iOS 6/7?
  • Мобильное Safari: манифест + кэш
  • отключение горизонтальной прокрутки на веб-сайте iPhone
  • Получение iPhone UDID и IMEI из Mobile Safari Использование Java-сервлета
  • Вход в Facebook на Apple CNA
  • Изображение SVG не отображается на iPad
  • Предотвратить переход на безопасное сафари iOS в режиме ожидания / автоматического блокирования / спящего режима?
  • Проблема CSS, вызывающая белое пространство в верхней части страницы на Safari Mobile (iOS)
  • сдвиг слайдов angularjs на сафари ios 9
  • Запрос HTTPS не может проверить сертификат на iOS Safari
  • Как подключиться к веб-сайту или Safari в приложении iOS
  • Interesting Posts

    добавление затухающего цвета и прозрачности в UIView

    Пользовательская ячейка просмотра таблицы с быстрым в xcode 6

    Исход UIScrollView изменяется после возврата обратно в UIViewController

    Проверьте, существует ли событие в календаре

    Сортировка аннотаций в Mapbox

    Где хранить дешифрованные файлы?

    Получение измененных метаданных изображения из iCloud Photo Library

    будет одобрено приложение ios, одобренное в магазине приложений

    применение тени для представления делает мой текст размытым

    проблема с fopen в ios 10.3, когда имя файла имеет символы unicode (utf8)

    Увеличьте максимальный уровень масштабирования на MKMapView

    Распространение специфического события касания для просмотра снизу

    Прокрутка подпрограммы вверху в UIScrollview iOS

    как я могу подавить или обойти оповещение прокси

    Как получить доступ к делегату приложения из теста пользовательского интерфейса?

    Давайте будем гением компьютера.