Не знаю насколько это хорошая идея, но можно например декорировать аудио/видео классы чтобы они сохраняли все существующие инстансы в какой-нибудь массив, а потом искать активный по нему. Или декорировать еще и методы, тогда при включении проигрывания медиа можно будет куда-нибудь сохранять активный,
CoCoCoder, ну возможно дело в named access, но в любом случае стоит хранить объекты не в глобальном window, а где-нибудь в другом месте, хотя бы для наглядности
CoCoCoder, я ничо не понял. Где у вас запись в window? Если вы не записываете в window, то не стоит ожидать что там что-то появится. То есть вам сначала нужно записать в window, а потом уже искать нужные свойства там
window[key] - а это вообще что значит? Что конкретно должно лежать в этих свойствах и откуда они там должны появиться? В вашем коде я не вижу нигде записи в window, поэтому не вижу и причин почему в этих свойствах должны лежать объекты у которых мог бы быть метод setCustomValidity