Открыть изображение в новой вкладке с использованием JavaScript

Нужно открыть картинку, заданную data URI, в новой вкладке. Пример:

let newWin = window.open('');
newWin.document.write('<img src="' + imageSrc + '" alt="Картинка">');
newWin.focus();

В Firefox всё работает корректно, а в Chrome отображается пустая вкладка. Помогите с решением.

Попробуй создать blob из data URI и затем открыть вкладку через URL.createObjectURL(). Такой подход может обойти ограничения Chrome. Интересно, кто-то уже использовал подобное решение? Какие варианты ещё пробовали для открытия картинок через data URI?

Я решил похожую задачу, используя симуляцию клика по ссылке с атрибутом target=“_blank”. Создавал элемент , задавал ему href с data URI, добавлял в DOM, эмулировал клик и затем убирал элемент. Такой способ оказался стабильнее на Chrome и обходил ограничения вставки через document.write, характерные для новых вкладок.

Попробовал другой вариант для обхода проблемы и вот что получилось: предварительно загружаешь картинку в скрытый элемент на странице, потом получаешь фактический URL этой картинки через кэш браузера и открываешь новое окно уже с этим URL. Так получается обойти ограничения Chrome. Конечно, код становится чуть сложнее, но стабильность важнее. Этот метод работал у меня без особых сложностей, так что можешь попробовать и посмотреть, как будет.

Может, попробовать создать blob из data URI и потом открыть новое окно с URL.createObjectURL(blob)? Интересно, какие ещё способы обхода ограничений Chrome вы знаете? Был ли опыт работы с подобными подходами на деле?

Я использовал подход с fetch для конвертации data URI в blob. Полученный blob затем можно обернуть через URL.createObjectURL и открыть в новой вкладке. Такой способ отлично обходил ограничения Chrome, в отличие от стандартного document.write. Метод оказался надежным и простым в реализации, даже когда приходится работать с большими данными. Попробуй, если стандартный способ не срабатывает на практике.