可访问性和所有这些JavaScript框架
我已经研究了一些JavaScript框架,比如Backbone.js和Batman.js有一段时间了,虽然我真的很喜欢它们,但我有一件琐碎的事情一直在重复。这个问题是可访问性 作为一名web开发人员,我一直在努力使我的网站和应用程序具有可访问性,特别是使用渐进增强的思想 很明显,这些新的JS框架并没有优雅地降级,所以我想知道其他开发人员对这个问题有什么想法,你对此做了什么。毕竟,网站/应用程序的可访问性并不是一件可选择的事情,因为它是许多国家法律的一部分 也许我只是对这个问题过于热心,没有意识到在可访问性方面已经取得了多大进展。任何需要javascript才能从中获取内容的网页都可能会遇到与可访问性相关的挑战。JavaScript框架的可访问性无疑是一个争论的问题,尽管事实上,任何web应用程序在动态提供内容时都会遇到缺点,而不管所使用的框架是什么 没有什么灵丹妙药可以确保您的站点可以访问,我当然不能解释每个JavaScript框架。以下是关于如何在使用JavaScript时防止站点完全不可访问的一些想法:可访问性和所有这些JavaScript框架,javascript,accessibility,backbone.js,javascript-framework,sproutcore,Javascript,Accessibility,Backbone.js,Javascript Framework,Sproutcore,我已经研究了一些JavaScript框架,比如Backbone.js和Batman.js有一段时间了,虽然我真的很喜欢它们,但我有一件琐碎的事情一直在重复。这个问题是可访问性 作为一名web开发人员,我一直在努力使我的网站和应用程序具有可访问性,特别是使用渐进增强的思想 很明显,这些新的JS框架并没有优雅地降级,所以我想知道其他开发人员对这个问题有什么想法,你对此做了什么。毕竟,网站/应用程序的可访问性并不是一件可选择的事情,因为它是许多国家法律的一部分 也许我只是对这个问题过于热心,没有意识到
- 遵循的指导原则,从和一般
- 避免使用需要完全通过javascript生成页面UI、控件和/或内容的框架,如,或使用自己专有标记的框架,如。您越能坚持使用静态(-ish)、语义HTML内容,您的境况就越好
- 考虑使用诸如和属性来指示页面中的动态区域。随着时间的推移,辅助设备支持越来越多的aria角色,因此当您可以适当地将这些aria属性添加到应用程序中时,使用这些aria属性是有意义的 对于JS库,检查它们的源代码,看看它们是否输出了任何aria角色。他们可能无法完全接近,但这将表明他们正在考虑使用辅助设备
- 只要有可能,就将JavaScript视为一种增强,而不是必要的。尝试提供其他方法或工作流来访问不需要动态页面更新的重要信息
- 与您的用户一起测试和验证您的应用程序!与使用辅助设备或使用web软件有其他困难的人进行一些用户测试。没有什么比观看真人使用网站更能帮助你证明你的网站是可访问的
- 获取bootstrapJSON并从中创建产品模型(使用您的js框架特性来实现这一点)李>
- 之后,使用相同的胡须模板重新发布产品,但现在在客户端执行。(再次使用js框架)李>
- 在视觉上,什么都不应该改变(在使用相同的模板在相同的模型上完成所有服务器端和客户端渲染之后),但至少现在客户端模型和视图之间存在绑定李>
- 将URL转换为hashbang URL。(例如:/products/#sort price asc)并使用js框架功能连接事件李>
- 抛出JSON并使用您选择的客户端mvc(上面的步骤6和步骤7)在客户端呈现JSON可能需要相当高的cpu成本。当然,这在移动设备上尤其明显
- 我