日期:2014-01-12 浏览次数:21572 次
IE 浏览器中 CSS Expression 特性的最大的问题:会反复执行,每秒钟可能执行了成百上千次,有严重的功用问题。
如何对 CSS Expression 进行优化呢?
至少:如果我们将 CSS Expression 在婚配的元素中仅执行一次,功用将会提升很大。
old9 在 《CSS Expression Reloaded》一文中提供了一个处理方案:
在 CSS Expression 语句体里,将触发该 Expression 的 CSS 属性重置。
例如:
div {
zoom: expression(function(el){el.style.zoom = "1"; alert(el.tagName);}(this));
}
补充几点:
最近在 Ajaxian 的文章《Creating a querySelector for IE that runs at “native speed”》 中看到作者 Dion Almaer 也提供了一个类似的处理方式: