我的情况碰巧是AngularJS,但这确实是一个普遍的问题。
使用AngularJS时,有些功能需要自定义属性,例如ng-repeat。推荐给它加上数据前缀-这样“较旧的浏览器”就不会删除它(在Angular的情况下,某些功能会被删除)。在什么时候不再需要?IE8?IE9?添加它们并没有多大区别,但是最好知道(而不是盲目地)哪些浏览器需要它,或者更好的是,何时可以安全地停止添加前缀。
没有(至少是常见的)浏览器存在不使用data
前缀的随机属性问题。从技术上讲,自定义属性应带有前缀以data
“有效”,但实际上,保留前缀没有当前缺点。规范建议使用data
前缀,因为它可以用于将来。例如,如果您创建一个名为的角度指令mask
,并像这样使用它:<div mask></div>
,那么如果HTML6引入了一个名为的属性mask
,则会产生冲突。data-mask
但是,保证永远不会发生冲突。
虽然我个人根本不关心我的页面是否使用HTML验证工具进行验证,但data
我提供的将来的证明很有吸引力。.为了方便起见,我将其保留下来。在大多数情况下,重构任何将来会成为冲突的东西可能不会花费太多的工作-无论如何这都是不可能的。
您可能一直在想Angular对custom的用法elements
,就像您想将mask
指令用作一样<mask></mask>
。为了使自定义元素在较旧的IE中工作,请在此处阅读http://docs.angularjs.org/guide/ie。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句