Yertuwernat
@Yertuwernat
Кратко о себе: живу в России, не женат, характер

Как сделать кросплатформеннуй работу с файловой системой?

Есть такая функция, она нормально работает в среде cordova.js
Что надо поправить чтобы она работала в любом современном браузере?

В браузере выдает ошибку: LocalFileSystem is not defined

описание:
создаем айфрейм
создаем файл и записываем в него html
читаем это файл и вставляем его в src айфрейма через toURL()

var iframe = document.createElement('iframe')
var html = 'здесь HTML-документ'
       
        window.requestFileSystem(
                LocalFileSystem.PERSISTENT, 
                0, 
                function (fs) 
                  {
                    fs.root.getFile(
                      "index.html", 
                      {create: true, exclusive: false}, 
                      function(fileEntry) 
                        {
                          fileEntry.createWriter(
                                function (fileWriter) 
                                  {
                                    fileWriter.onwriteend = function() 
                                      {
                                        iframe.src = fileEntry.toURL()

                                        document.body.appendChild(iframe)
                                      }
                                    var dataObj = new Blob([html], { type: 'text/html' })
                                    fileWriter.write(dataObj)
                                  }
                            )
                        } 
                    )
                  }
                )
  • Вопрос задан
  • 87 просмотров
Решения вопроса 1
Что надо поправить чтобы она работала в любом современном браузере?

Браузеры.
создаем файл и записываем в него html
читаем это файл и вставляем его в src айфрейма через toURL()

Создаем файл и записываем в него бинарь какого нибудь WannaCry, дергаем файл по адресу file://Путь_до_файла, юзер его запускает и все.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы