我在想,是否有一种标准方式从角度元素获取属性而不知道属性名称已经以数据或x数据为前缀。如何读取angular.element的属性而不知道它是否已经以数据或x-数据作为前缀
我已经看到了这个代码指令内:
el.attr('x-data-' + attr) || el.attr('data-' + attr) || el.attr(attr).
这是正确的做法,或者有什么更标准?
我在想,是否有一种标准方式从角度元素获取属性而不知道属性名称已经以数据或x数据为前缀。如何读取angular.element的属性而不知道它是否已经以数据或x-数据作为前缀
我已经看到了这个代码指令内:
el.attr('x-data-' + attr) || el.attr('data-' + attr) || el.attr(attr).
这是正确的做法,或者有什么更标准?
在HTML 您可以添加属性,如数据元素 - *。(注:总是前缀数据 - 你的属性)
<div data-tasktype = "somevalue"> </div>
在JS文件 您可以像
获取属性的值var val = element.data('tasktype');
(注意:这里前缀部分将被跳过。) 浏览器:IE9 &以上,chrome等。
如果你不能确定浏览器或还不能确定什么是你要使用你的属性的命名约定,你可以去
el.attr('x-data-' + attr) || el.attr('data-' + attr) || el.attr(attr)
如果这是您自己的应用程序,您的指令将被使用,并且如果您知道浏览器版本提前(即不是< = IE8),我不会打扰data-
前缀。
另一方面,如果您正在开发其他人使用的指令库,并且您无法控制浏览器或HTML作者,则应该只使用您拥有的。