window.open()
возвращает референс на прокси открытого окна. Попробуйте его закрыть через таймаут: const tmpWindow = window.open('https://example.com', ... );
setTimeout(() => tmpWindow.close(), 1000); // через секунду закрыть
Не проверял, это может потребовать настройки CORS, но может и так получится.tmpWindow.postMessage()
сообщение, а в открываемых сайтах добавить код, слушающий эти сообщения (только с опр. домена) и закрывающего окно при получении.
Например, забыли упомянуть, что за ошибка.
Весь длинный код лучше выложить в работающей песочнице типа JSFiddle или CodePen, чтобы там и картинки были и можно было попробовать.