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

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

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

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

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

Комментарии 9

Artemy Tregubenko (arty.name) № 1
к сожалению, IE тоже идёт по пути webkit «насовать в релизный продукт сырые реализации черновых спецификаций и подать это как преимущество перед другими браузерами»

а остальным потом разгребать несовместимости
Евгений Степанищев (bolknote.ru) автор № 2
Это не «путь вебкита», это путь любого браузера, вообще любого.
Artemy Tregubenko (arty.name) № 3
опера так не делала, да и фаерфокс обычно ждёт, пока обсуждение уляжется
а вебкит с ие смело публикуют штуки без префиксов
Евгений Степанищев (bolknote.ru) автор № 4
Комментарий для arty.name:

А какая штука «без префикса» имеется ввиду? Lazyload что ли? Так префиксы бывают в JS и CSS, в HTML их не бывает. Когда появляется новый тег (например, event-source в «Опере»: http://dev.opera.com/articles/view/labs-ev … -browsers/, кстати, стандарт потом изменился) или новый атрибут (свежих примеров не помню, а искать лень), они появляются без префиксов.
Artemy Tregubenko (arty.name) № 5
для html-тегов и атрибутов есть настройки браузера, которые позволяют включать их только заинтересованным разработчикам. Или другой вариант: включать их только в бета-версиях браузера, которыми широкие массы не пользуются
Евгений Степанищев (bolknote.ru) автор № 6
Комментарий для arty.name:

На самом деле, я не припомню хоть какого-то вреда от внедрения тегов или атрибутов без префикса. Вот был атрибут LOWSRC или тег LAYER, они сгинули, но никому это не повредило.
Евгений Степанищев (bolknote.ru) автор № 7
Точности ради хочу отметить, что атрибуты тегов с префиксами всё-таки бывают.
Artemy Tregubenko (arty.name) № 8
никому не повредило? я лично в браузерных войнах не участвовал, но разве не благодаря layer и прочим отличиям приходилось делать совершенно разные вещи для разных браузеров?

я считаю доказанным, что включение экспериментальных разработок в массовые продукты очень негативно влияет на создание универсальных стандартов, будь то теги, атрибуты, JS API или CSS-свойства.
Евгений Степанищев (bolknote.ru) автор № 9

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

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

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

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