Современные браузеры поддерживают так называемый raw формат URL, когда вместо адреса изображения в CSS и даже в HTML <img src=»…» /> можно задать закодированный массив бинарных данных картинки. Требования к формату raw, а вернее отличия в допустимых отклонениях от стандарта требует внимательно тестировать картинку под всеми требуемыми ТЗ браузерами.
Наиболее лояльные к формату кодирования Chrome и Opera (оба на движке chromium). Они рендерят, к примеру, картинку не взирая на пропущенный токен charset перед кодировкой:
|
|
<img src="data:image/svg+xml;utf8, ... "/> |
и наличие не urlencoded символов в коде.
FF и IE более принципиальны. Для FireFox важно указать токен charset перед utf8, а для IE придется еще и провести кодирование символов, так чтобы они соответствовали формату URL.
В javascript можно использовать ф-цию encodeURIComponent:
|
|
var img = $('img').get(0); img.attr(src, 'data:image/svg+xml;charset=utf8,' + encodeURIComponent('<svg ... </svg>')); |
Этот вариант удовлетворит всех.
Данная запись опубликована в 30.11.2018 01:06 и размещена в рубрике На первой полосе.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Апрель 27, 2012 г.
Играя в разные игры, и уделяя этому феномену часть своего времени, дошел до определенного состояния, когда удалось абстрагироваться от самих игр на уровне потребителя и начать рассматривать игры со стороны.
Знакомство с компьютером, началось для ...
Читать
Июль 1, 2023 г.
№560 leetcode Subarray Sum Equals K.
Есть массив чисел, и дано значение k. Надо найти все последовательные под-массивы сумма которых равна k.
В условиях также сказано, что числа в массиве могут быть как положительные, так и отрицательные. Если ...
Читать
Декабрь 3, 2023 г.
Хардкорный триал в Core City не пройти без подготовки. Он представляет серию лабиринтов/уровней, которые нужно не просто пройти, а сделать это быстро. ...
Читать
Октябрь 28, 2022 г.
Задача - заменить первое/последнее искомое значение в заданной строке.
В PHP много уделяется внимания работы со строками, но вот оптимального решения для этой задачи нет.
Функция str_replace, заменяет все значения, но может посчитать вам сколько ...
Читать