区分大小写的数据属性

好吧,它一定是迟到了,我的大脑麻木了。 为什么jQuery不能识别数据属性中的区分大小写? 我遇到了这个恼人的问题:

HTML:

Test 1 

使用Javascript:

 console.log($('a').data('showId')); console.log($('a').data('showid')); 

第一行未定义 ,第二行正确返回12345 。 我认为它应该在第一行正确返回,在第二行未定义。 那么它是否意味着所有数据都必须是小写的?

在这里查看http://jsfiddle.net/qhoc/7dExt/1/

我认为这与data- *明确地阻止数据密钥具有大写字母A到Z字母这一事实有关。

  • 名称不能以xml开头,无论用于这些字母的情况如何;
  • 名称不得包含任何分号(U + 003A);
  • 名称不得包含大写字母A至Z字母。

在data- *命名方案中,可以使用键showId在javascript中访问data-show-id类的数据属性,因为这个限制使用大写字母似乎在键中受到限制。

另请阅读 :

HTML文档中HTML元素的所有属性都会自动进行ASCII小写,因此对ASCII大写字母的限制不会影响此类文档