Hasty Briefsbeta

双语

You're Looking at the Wrong Pretext Demo

19 hours ago
  • #accessibility
  • #performance
  • #frontend
  • Pretext是一个新的JavaScript库,它可以在不读取DOM的情况下预测文本块的高度,从而消除强制布局重新计算,提升性能,同时保持文本的可访问性。
  • 该库使用canvas.measureText()来测量并缓存字体指标,然后纯粹进行数学布局计算,这使得文本定位非常迅速,不会触发浏览器布局暂停。
  • 它支持完整的可访问性,通过将文本保留在DOM中,实现了屏幕阅读器兼容性、文本选择、复制、翻译和键盘导航,这不同于牺牲了这些功能的画布渲染。
  • Pretext的两阶段架构包括prepare()用于一次性的昂贵任务(例如文本分割、字体测量),以及layout()用于快速高度预测,使其非常适合虚拟列表、聊天界面和动态布局。
  • 该库的突破在于能够将性能提升与可访问性结合起来,为生产级Web应用提供了一种新方法,在这些应用中,传统方法会导致布局抖动。
  • 尽管病毒式演示主要关注基于画布的可视效果(如龙和动画),但其核心价值在于其DOM测量路径,它解决了文本密集型应用中的实际问题,而不损害用户体验。