【发布时间】:2011-11-30 06:58:38
【问题描述】:
我们将 HTML5 的 data-* 属性用于我们的一些客户端交互设置。 jQuery 使用这些来完成它的工作。
问题是进来的 HTML 可能会有所不同。显然这是应该解决的问题,但不幸的是,我并不总是能够控制正在生成的 HTML。
问题:
鉴于这两个标签:
<a data-sampleAttributeName="example">
<a data-sampleattributename="example">
有没有巧妙的方法将它们视为一回事?
我想出的最好的是这样的:
var theAttribute = ($myobject).data('sampleAttributeName');
if (($myobject).data('sampleAttributeName')){
theAttribute = ($myobject).data('sampleAttributeName')
} else {
theAttribute = ($myobject).data('sampleattributename')
}
我可以把它变成一个函数,我可以将 camelCase 版本传递给并检查两者。我只是想知道 jQuery 中是否有一个更简洁的内置功能来忽略data(或attr)值的大小写。
【问题讨论】:
标签: jquery case-sensitive camelcasing