Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как получить ссылку на объект, содержащий DataURL? (https://javascript.ru/forum/misc/53054-kak-poluchit-ssylku-na-obekt-soderzhashhijj-dataurl.html)

ssadfaf 19.01.2015 11:20

Как получить ссылку на объект, содержащий DataURL?
 
Не уверен, что правильно сформулировал вопрос.
Для дерева нарисовал кучу иконок в канвасе и закинул их в объект, примерно так:
var imgFromCnvs = NewElem.toDataURL("image/png");
var ElemIdName = 'treeVLineLast';
treeEl.imgs[ElemIdName]=imgFromCnvs;

А потом вот так отображаю их на странице:
NewElem.style.backgroundImage = 'url("'+treeEl.imgs.treeVLineLast+'")';

Потом заглянул в консоль браузера и ужаснулся. Получается, что я многократно (сотни или даже тысячи раз) дублирую эти картинки, вместо того, чтобы использовать ссылку на объект. Собственно, тут и пришло понимание, что dataURL - это данные, которые можно использовать как ссылку. Но от этого легче не стало.
Подумывал разместить картинку на странице и сделать display:'none', но src картинки тот же, так что не вариант.
Почему я не использую канвас напрямую?
Идея была такая: при загрузке страницы наделать картинок и отложить канвас в сторону, далее оперировать картинками, сохранёнными в объекте.


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