Пишу, по большей части, про историю, свою жизнь и немного про программирование.

Ленивая загрузка в ИЕ11

В IE11 интересную штуку сделали — ленивую загрузку. Можно пометить картинку (включая внедрённые тегом SVG), теги для воспроизведения видео и аудио, скрипты и многое другое специальным атрибутом lazyload, который означает «начать загружать, когда загрузится всё важное».

Иногда может быть удобно, для оптимизации скорости загрузки страницы, попросить браузер не загружать пока что-то объёмное. Я, например, в одном из наших проектов поставил этот атрибут аватарам пользователей. Пример использования:

<img src="avatar-3132.png" width="200" height="200" lazyload="1">

Можно добавить этот атрибут к банерам (на что мало кто согласится), большим графическим оформительским элементам (чтобы пользователь быстрее начал читать статью), фоновой музыке (правда она редко бывает вообще уместна) и т. п.

9 комментариев
Artemy Tregubenko (arty.name) 2013

к сожалению, IE тоже идёт по пути webkit «насовать в релизный продукт сырые реализации черновых спецификаций и подать это как преимущество перед другими браузерами»

а остальным потом разгребать несовместимости

Евгений Степанищев (bolknote.ru) 2013

Комментарий для arty.name:

Это не «путь вебкита», это путь любого браузера, вообще любого.

Artemy Tregubenko (arty.name) 2013

опера так не делала, да и фаерфокс обычно ждёт, пока обсуждение уляжется
а вебкит с ие смело публикуют штуки без префиксов

Евгений Степанищев (bolknote.ru) 2013

Комментарий для arty.name:

А какая штука «без префикса» имеется ввиду? Lazyload что ли? Так префиксы бывают в JS и CSS, в HTML их не бывает. Когда появляется новый тег (например, event-source в «Опере»: http://dev.opera.com/articles/view/labs-event-streaming-to-web-browsers/​, кстати, стандарт потом изменился) или новый атрибут (свежих примеров не помню, а искать лень), они появляются без префиксов.

Artemy Tregubenko (arty.name) 2013

для html-тегов и атрибутов есть настройки браузера, которые позволяют включать их только заинтересованным разработчикам. Или другой вариант: включать их только в бета-версиях браузера, которыми широкие массы не пользуются

Евгений Степанищев (bolknote.ru) 2013

Комментарий для arty.name:

На самом деле, я не припомню хоть какого-то вреда от внедрения тегов или атрибутов без префикса. Вот был атрибут LOWSRC или тег LAYER, они сгинули, но никому это не повредило.

Евгений Степанищев (bolknote.ru) 2013

Точности ради хочу отметить, что атрибуты тегов с префиксами всё-таки бывают.

Artemy Tregubenko (arty.name) 2013

никому не повредило? я лично в браузерных войнах не участвовал, но разве не благодаря layer и прочим отличиям приходилось делать совершенно разные вещи для разных браузеров?

я считаю доказанным, что включение экспериментальных разработок в массовые продукты очень негативно влияет на создание универсальных стандартов, будь то теги, атрибуты, JS API или CSS-свойства.

Евгений Степанищев (bolknote.ru) 2013

Комментарий для arty.name:

никому не повредило? я лично в браузерных войнах не участвовал, но разве не благодаря layer и прочим отличиям приходилось делать совершенно разные вещи для разных браузеров?

Я участвовал. Тогда на бедный HTML ложилось бремя не только разметки, но и оформления, CSS был в зачаточном состоянии. Проблема LAYER/DIV была в том, что это базовые теги вёрстки (DIV им остаётся до сих пор), но решалась она просто — один тег вкладывался в другой и всё. DIV не понимался Нетскейпом, а LAYER — Эксплорером.

Больше вреда было от различий в JS и DOM. Настолько много, что писать на JS что-то серьёзное считалось подвигом.