Data URI link <a href="data: не работает в Microsoft Edge

Этот простой код отлично работает везде, кроме Microsoft Edge:

<a href="data:text/plain;charset=utf-8,Test">link</a>

[JSFiddle]

В Microsoft Edge я получаю сообщение "Это странно... Microsoft не может найти эту страницу":

enter image description here

Примеры из документации Mozilla также не работают с тем же результатом.

Здесь вывод из консоли Edge:

Эта ошибка возникает при открытии нового пограничного окна, на новых вкладках он вводит data:text/plain;charset=utf-8,Test в качестве поискового запроса в поисковую систему по умолчанию.

Похоже, что Microsoft Edge не имеет определения для data:

Кто-нибудь знает об этом решении?


Обновление:, к сожалению, кажется, что нет возможности использовать URI данных в ссылках в IE/Edge. Я создал связанный вопрос об обнаружении поддержки URI данных в ссылках: Обнаружение URI данных в поддержке ссылок с помощью Modernizr

Ответы

Ответ 1

Ни IE, ни Microsoft Edge не поддерживают переход к URI данных. MSDN утверждает, что это из соображений безопасности.

Единственное решение - связать, используя поддерживаемую схему, такую ​​как file://или http://, для некоторого ресурса, содержащего контент.

Интересно, что более старые версии IE (я говорю старше 6) поддерживали предшественник URI данных в схеме about: URI, хотя поддерживался только HTML. Эти URI больше не работают сегодня и просто перенаправляются на "Навигация отменено" (ранее "Действие отменено" ).

Ответ 2

Так как IE и Edge поддерживают теги <img> с URI данных в качестве источника, вы можете перетаскивать ссылку на изображение с помощью javascript для записи в документ:

<a href="javascript:document.write('<img src=data:image/png;base64,iVBORw0KGgoAA
AANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAD///+l2Z/dAAAAM0l
EQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeNGe4Ug9C9zwz3gVLMDA/A6
P9/AFGGFyjOXZtQAAAAAElFTkSuQmCC />')">link</a>