Вы не можете сделать это с чистым html / javascript. Это связано с тем, что у вас есть отдельное подключение к веб-серверу для извлечения отдельного файла (изображения), и обычный веб-сервер будет обслуживать файл с установленными заголовками содержимого, так что браузер, читающий тип содержимого, решит, что тип может обрабатываться внутренне.
Способ заставить браузер не обрабатывать файл внутренне - это изменить заголовки (предпочтительно расположение содержимого или тип содержимого), чтобы браузер не пытался обработать файл внутренне. Вы можете сделать это, написав скрипт на веб-сервере, который динамически устанавливает заголовки (то есть download.php), или настроив веб-сервер так, чтобы он возвращал разные заголовки для файла, который вы хотите загрузить. Вы можете сделать это для каждого каталога на веб-сервере, что позволит вам уйти без написания php или javascript - просто разместите все загружаемые изображения в одном месте.