使用Modernizr加载HTML5 Shiv的性能

Sco*_*son 6 javascript performance modernizr

我的网站使用Modernizr,需要HTML5Shiv和PrintShiv.不使用Modernizr加载这些shivs,而是通过IE条件加载它们是否有任何性能优势?显然使用Modernizr更干净,但我专注于性能.

Ant*_*los 3

我自己很好奇,所以我设置了一些测试页面来看看。

如果您的网站只需要 HTML5Shiv 和 Modernizr 中的 PrintShiv,那么使用 IE 条件仅加载 html5shiv-printshiv.js 的性能会比始终为所有其他浏览器(IE 9)加载 Modernizr 更好。因此,在您的情况下,您可能应该停止使用modernizr,而只在条件中使用shiv。

对于需要 shiv 的 IE 浏览器,使用modernizr 和仅使用 html5shiv 之间的负载/性能是相同的。仅使用 html5shiv 的性能提升可以在现代 IE 浏览器(IE9 和 IE10)上看到

测试页面:

使用 IE9 / Cable 的测试报告:

比较这些完全加载的测试,我们使用 html5shiv-printshiv.js 节省了 1.677 秒

Modernizr 更新:阅读Modernizr 的 GitHub 项目上的问题单中起草的有关性能注意事项的文档,了解更多详细信息。