С этим подходом есть некоторая проблема. Другие браузеры проигнорируют атрибут defer
и загрузят этот скрипт сразу же. Существует несколько способов, как можно с этим побороться. Можно воспользоваться условными комментариями, чтобы скрыть «отложенный» скрипт:
<!--[if IE]><script defer="defer" src="ie_onload.js"></script><![endif]-->
IE также поддерживает условную компиляцию. Следующий код будет JavaScript-эквивалентом для заявленного выше HTML-кода:
// для Internet Explorer /*@cc_on @*/ /*@if (@_win32) document.write("<script defer=\"defer\" src=\"ie_onload.js\"><\/script>"); /*@end @*/