嗯,我承认:我已广泛使用 jQuery.attr 在多个很多脚本的DOM元素中存储自定义数据。我想知道是否将我的所有脚本转换为使用 jQuery.data 而不是jQuery.attr。据我所知,jQuery.data的优点是:
自定义属性的主要优点是:
有人能告诉我,如果我错过了某些内容,或者是否存在使jQuery.data更受欢迎的问题?
答案 0 :(得分:5)
你几乎得到了它。但是你知道每个 HTML属性吗?屏幕阅读器和其他非标准(可用)的可用性工具使用了很多属性。当您不小心使用role
属性并且屏幕阅读器选择了该怎么办时会发生什么?使用$.data
不仅更整洁,更安全,更有意义。
这意味着,您不必返回并更改所有旧代码,因为如果您使用“data-”作为前缀,您将永远不必担心与其他属性重叠。但是,如果您需要存储比字符串更复杂的数据类型,请使用$.data
。
答案 1 :(得分:1)
我认为你不会错过任何东西,但在dom元素属性上存储数据总是一个不好的做法,所以我认为你应该使用$ .data函数。