15.07.2015, 04:58
|
Профессор
|
|
Регистрация: 23.10.2010
Сообщений: 2,718
|
|
Сообщение от рони
|
в Firefox не сработает click()
|
Это с какого года?
Ладно, не важно. Вы просто скопировали сырец с СО по моей ссылке, чтобы любовно оформить его в тегах "запустить". В этом же вы видите вашу великую миссию - подсовывать ламерам готовенькое за плюсики. Звучит гимн героев советского союза...
Разумеется в ФФ .click() работает и давно и получше чем в других браузерах.
|
|
15.07.2015, 06:52
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,135
|
|
Сообщение от kostyanet
|
Разумеется в ФФ .click() работает и давно и получше чем в других браузерах.
|
шедевр!!!вам хоть иногда ... , видимо нет
|
|
15.07.2015, 14:50
|
Профессор
|
|
Регистрация: 23.10.2010
Сообщений: 2,718
|
|
Да ему просто не под силу признать факт, теперь будет делать круглые глаза, изображать патетику и охать. Как будто я не видел таких светочей.
|
|
15.07.2015, 16:17
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,135
|
|
kostyanet
хорошо пусть в вашей вселенной клик в ФФ работает
тогда этот код для вас
function download(filename, text) {
var blob = new Blob([text], {type:'text/csv'}),
link = document.createElement('a');
link.href = URL.createObjectURL(blob);
link.setAttribute('download', filename);
link.click()
}
download('test.txt', 'Hello world! Hello world!');
остальным я рекомендую не этот а рабочий код в 13 посте.
буду считать что вы kostyanet невнимательны, при чтении тем.
|
|
15.07.2015, 21:48
|
Профессор
|
|
Регистрация: 23.10.2010
Сообщений: 2,718
|
|
Сообщение от рони
|
буду считать что вы kostyanet невнимательны, при чтении тем.
|
Это вы профессор. Что вы щелкать-то собираетесь? Абстрактный элемент которого еще нет дома? Само собой он не будет щелкаться, а браузеры которые дают такое щелкать - не нормальные. ФФ не дает? Значит в ФФ все сделано правильно.
Надо в дом засунуть и тогда хоть где хоть защелкайся. То есть смысл той вилки все равно нулевой. Нет никакой связи между наличием кастомных событий и возможной фичей браузера который дает щелкать по абстрактному элементу (ну типа элементу в теневом доме). Потому что вы подепили тот снипет лишь бы оформить.
Вот что надо вставить перед link.click():
link = document.body.appendChild(link);
link.click();
Ну, типа да, затем придется удалить или просто закешировать и затем навешивать другие урлы и имена файлов.
|
|
15.07.2015, 22:18
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,135
|
|
Сообщение от kostyanet
|
Вот что надо вставить перед link.click():
|
одно радует что вы разобрались, и дали разумное обьяснение, жаль что до этого вы счёлкали
Сообщение от kostyanet
|
Абстрактный элемент которого еще нет дома?
|
сейчас если хотите делайте круглые глаза, изображайте, патетику и охайте.
мир по прежнему вокруг вас одни дураки.
да, а где код с интерфейсом для
Сообщение от kostyanet
|
Ну, типа да, затем придется удалить или просто закешировать и затем навешивать другие урлы и имена файлов.
|
? (не надо кода, я вам так верю)
|
|
15.07.2015, 23:35
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,135
|
|
kostyanet,
только как догадатся что rows это массив с текстом? вижу недоработочка в интерфейсе, добавьте поле ввода с проверкой, чтоб не гонять пустой массив, а то вы как то не по программистки.
Последний раз редактировалось рони, 15.07.2015 в 23:39.
|
|
16.07.2015, 06:22
|
Профессор
|
|
Регистрация: 23.10.2010
Сообщений: 2,718
|
|
Признаю вашу наглость и позволяю приделать к тому кусочку все что пожелаете.
Для тех кто тоже нипонял: текст надо засунуть в [], то есть вот так передать [text]
|
|
30.07.2015, 03:48
|
Интересующийся
|
|
Регистрация: 03.07.2015
Сообщений: 16
|
|
Сообщение от рони
|
mmotor,
function download(filename, text) {
var blob = new Blob([text], {type:'text/csv'}),
link = document.createElement('a');
link.href = URL.createObjectURL(blob);
link.setAttribute('download', filename);
var event = document.createEvent('MouseEvents');
event.initEvent('click', true, true);
link.dispatchEvent(event);
}
download('test.txt', 'Hello world! Hello world!');
|
В IE не работает
|
|
|
|