JavaScript生态系统正经历一场深层危机。随着Rust、Go和Zig等编译型语言的崛起,越来越多用于开发和构建的JavaScript工具被重写为这些性能更高的语言。虽然用Rust重写的工具性能显著提升,但这一趋势也减少了能够维护JavaScript工具链的开发者数量。
一位开发者分享了从零构建浏览器文本编辑器的技术探索过程。该开发者初期尝试使用Canvas渲染文本,但这种方案需要达到60-120fps的渲染帧率,同时缺乏交互性和可访问性支持。随后转向contenteditable属性方案,获得了原生文本选择和撤销历史功能,但在处理字符数超过阈值的文本时性能表现不稳定。
Triptych Project开发者提议为HTML的button元素添加action和method属性,以明确区分按钮和链接在网页中的不同语义含义 。按钮代表动作,在固定上下文中执行;而链接代表目的地,允许用户控制打开方式,如中键点击或在新标签页打开 。