您当前的位置: 首页 > 前端教程 > CSS教程 > css样式表表达式Expression优化

css样式表表达式Expression优化

作者:不详 来源:网络 发布时间: 2010-11-03 10:08 点击:
IE浏览器中CSSExpression特性的最大的问题:会反复执行,每秒钟可能执行了成百上千次,有严重的性能问题。 如何对CSSExpression进行优化呢? 至少:如果我们将CSSExpression在匹配的元素中仅执行一次,性能将会提升很大。 old9在《CSSExpressionReloaded》一文中提供了

css样式表表达式Expression优化

  IE浏览器中CSSExpression特性的最大的问题:会反复执行,每秒钟可能执行了成百上千次,有严重的性能问题。
  
  如何对CSSExpression进行优化呢?
  
  至少:如果我们将CSSExpression在匹配的元素中仅执行一次,性能将会提升很大。
  
  old9在《CSSExpressionReloaded》一文中提供了一个解决方案:
  
  在CSSExpression语句体里,将触发该Expression的CSS属性重置。
  
  例如:
  
  div{zoom:expression(function(el){el.style.zoom="1";alert(el.tagName);}(this));}补充几点:
  
  CSSExpression执行在任意一个匹配的元素上。
  
  在CSSexpression内,“this”关键字指向当前匹配的HTML元素。
  
  CSS属性选用一些不常用的属性来触发,触发完重置回默认值。
  
  最近在Ajaxian的文章《CreatingaquerySelectorforIEthatrunsat“nativespeed”》中看到作者DionAlmaer也提供了一个类似的解决方式:
  
  div{-singlex:expression(this.singlex?0:(function(t){alert(t.tagName);t.singlex=0;})(this));}但此代码并没有完全解决CSSExpression最大的性能问题。因为每次触发还是要去执行Expression脚本,比如你滚动鼠标的中间滚轮。
  
  最后强调,仅是对CSSExpression做了优化,但并未说CSSExpression就不存在其他方面的问题。

分享到:
本文"css样式表表达式Expression优化"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(1)
100%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4