Проверить поддержку браузера для определенного типа Mime?
Для веб-приложения, которое позволяет просматривать в браузере документы, я хотел бы проверить, поддерживает ли браузер пользователя предварительный просмотр текущего типа mime документа.
Есть ли способ, основанный на Javascript, для соответствия текущему типу mime с типами, поддерживаемыми браузером?
Спасибо!
Ответы
Ответ 1
В последних браузерах есть объект типа navigatior.plugins, подобный массиву. Вы можете проверить каждый плагин для вашего типа mime.
Вот решение gist и jsfiddle.
var mimeCheck = function (type) {
return Array.prototype.reduce.call(navigator.plugins, function (supported, plugin) {
return supported || Array.prototype.reduce.call(plugin, function (supported, mime) {
return supported || mime.type == type;
}, supported);
}, false);
};
Ответ 2
Вы можете сделать вызов AJAX и проверить заголовки ответов для типа mimetype.
$.ajax({
type: "GET",
url: 'http://..../thing.pdf',
success: function (output, status, xhr) {
alert("done!"+ xhr.getAllResponseHeaders());
alert("done!"+ xhr.getResponseHeader("Content-Type"));
}
});
Ответ 3
В этом вопросе был тот же вопрос, который я думаю, попробуйте его проверить
Проверьте, поддерживает ли браузер определенный тип MIME?
Ответ 4
Если вы определяете, какой плагин необходим для определенного типа документа, вы можете попытаться посмотреть, нужен ли плагин. Должен работать хотя бы на Firefox и Chrome.
window.navigator.plugins
И вот хороший пример