Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Почему не работает атрибут download у динамически созданного <a>? (https://javascript.ru/forum/dom-window/65425-pochemu-ne-rabotaet-atribut-download-u-dinamicheski-sozdannogo.html)

iNfantry 18.10.2016 02:50

Почему не работает атрибут download у динамически созданного <a>?
 
Подскажите что не так - в случае обычного хтмл атрибут работает, в случае если элемент создан динамически, не важно - просто createElement или с помощью jQuery - то не работает? И неважно прописываешь его как $('<a href="..." download="...">test</a>') или obj_a.attr('download', '...');

Работаю в Firefox 42.0.

Aetae 18.10.2016 03:19

Всё работает ff47/51a.
<script src="//code.jquery.com/jquery-3.1.1.min.js"></script>
<div>Ссылка: </div>
<script>
$('<a href="/" download="this.html">test</a>').appendTo('div')
</script>

Не вижу причин, почему бы не работало и в 42, но поскольку у ff давно автообновление и вам пора обновиться, ибо юзеров с 42 версией считай что нет.

iNfantry 18.10.2016 03:47

Хм, все верно, работает. Дело оказалось в ссылке - я динамически вставляю ссылку на скачивание трека с вк, и именно для такой ссылки download почему-то не работает (происходит редирект браузера на прослушку трека), она в виде

"http://cs1-27v4.vk-cdn.net/p1/9fcdd0aa028f0b.mp3?extra=ln5MPg4qRG5IParV0iKJXKGyn AKUbesnAMPKDzb2y7qFUuSfSBEr88GXscBZxkDYexZjvyIf70y DfiCKQ-SZLcdrgcyYNMpaVG19YG_3Z-reCTg3DMJopB2ND9UhdWSfjIaY"

При этом обычная "./1.mp3" работает. Интересно почему?

warren buffet 18.10.2016 04:51

Интересно почему редирект? Сервер так захотел.

iNfantry 18.10.2016 13:28

Я не так выразился, не редирект в буквальном смысле, а открывание трека в браузере.

Aetae 18.10.2016 14:12

Думаю это баг, но надо смотреть в спецификации чтоб наверняка.)

laimas 18.10.2016 16:43

Цитата:

Сообщение от iNfantry
http://cs1-27v4.vk-cdn.net/p1/9fcdd0aa028f0b.mp3?extra=ln5MPg4qRG5IParV0iKJXKGyn AKUbesnAMPKDzb2y7qFUuSfSBEr88GXscBZxkDYexZjvyIf70y DfiCKQ-SZLcdrgcyYNMpaVG19YG_3Z-reCTg3DMJopB2ND9UhdWSfjIaY

Так формируют временные ссылки и для одного пользователя.

iNfantry 18.10.2016 16:54

Бред какой-то, сделал полную ссылку с хттп на свой сайт - все работает, но с сылкой на контакт не работает, как это возможно?

iNfantry 18.10.2016 16:57

Цитата:

Сообщение от laimas (Сообщение 432133)
Так формируют временные ссылки и для одного пользователя.

Это не важно, у меня через openapi запрашиваются треки для текущего пользователя. И кстати - http://cs1-27v4.vk-cdn.net/p1/9fcdd0aa028f0b.mp3 вот так тоже работает, ?extra=xxx скорее всего для их какихто нужд подставляется, оно короче не является необходимым.
Факт остается фактом http://mysite.com/1.mp3 - работает а http://cs1-27v4.vk-cdn.net/p1/9fcdd0aa028f0b.mp3 - не работает. :-?

Aetae 18.10.2016 17:07

laimas, сделай ссылку на любой файл и добавь те же параметры - в фф не будет работать, в хроме будет, но имя файла не поменяет.) Подозреваю что всё-таки что-то в спеке атрибута download, но и не исключаю что баг. Копать лень.
<a href="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif?extra=ln5MPg4qRG5IParV0iKJXKGynAKUbesnAMPKDzb2y7qFUuSfSBEr88GXscBZxkDYexZjvyIf70yDfiCKQ-SZLcdrgcyYNMpaVG19YG_3Z-reCTg3DMJopB2ND9UhdWSfjIaY" download="this.html">test</a>


Часовой пояс GMT +3, время: 10:35.