Fixes #13550. .data should not miss attr() set data-* with hyphenated property names. Closes gh-1189

This commit is contained in:
Michał Gołębiowski
2013-03-02 13:04:48 -05:00
committed by Rick Waldron
parent 8f7218198d
commit 761b96c301
2 changed files with 17 additions and 8 deletions

View File

@@ -30,7 +30,7 @@ Data.prototype = {
if ( !unlock ) {
unlock = Data.uid++;
descriptor[ this.expando ] = { value: unlock };
// Secure it in a non-enumerable, non-writable property
try {
Object.defineProperties( owner, descriptor );
@@ -312,7 +312,8 @@ jQuery.fn.extend({
});
function dataAttr( elem, key, data ) {
var name;
var name,
camelKey = jQuery.camelCase( key );
// If nothing was found internally, try to fetch any
// data from the HTML5 data-* attribute
@@ -333,7 +334,7 @@ function dataAttr( elem, key, data ) {
} catch( e ) {}
// Make sure we set the data so it isn't changed later
data_user.set( elem, key, data );
data_user.set( elem, camelKey, data );
} else {
data = undefined;
}