Как решить, что присутствие файла HTML5 drag'n'drop загружает API (как тот от FF3.6)

Я пишу приложение, это, как предполагается, поддерживает HTML5, перетаскивают/отбрасывают API для файла, во многом как на описанном сюда. Я хотел бы выполнить программную проверку на ли поддержка браузера этот вид безумия:) Решение, которое работает на данный момент, проверяет, обеспечивает ли браузер класс FileReader, как это:

  if (typeof(FileReader) == "undefined") {
    $("#dropbox").hide();
  } else {
    // connect events
    $("#filebox").hide();
  }

Но это - очевидно, не корректное (я не использую тот класс вообще).

Какие-либо идеи?

24
задан konryd 22 February 2010 в 15:25
поделиться

2 ответа

if ("files" in DataTransfer.prototype) {...}
11
ответ дан 28 November 2019 в 23:01
поделиться

Проверка существования FileReader является правильным способом решения этой задачи. FileReader является официальной частью File Api. Я бы объединил это с Modernizr. Поддержка Drag and Drop запланирована на релиз 1.2. Вы можете взять исходники на GitHub и начать работать с этим уже сейчас. http://github.com/Modernizr/Modernizr/blob/master/modernizr.js

if (!!FileReader && Modernizr.draganddrop) {
  // sexy drag and drop action
} else {
  // no drag and drop support available :(
}

Если вы не видели Dive into HTML5, вам обязательно нужно ознакомиться с предложениями Марка Пилгрима по обнаружению HTML5.

19
ответ дан 28 November 2019 в 23:01
поделиться
Другие вопросы по тегам:

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