Make sure that undefined is returned for not found data- attributes, not null.
authorJohn Resig <jeresig@gmail.com>
Tue, 21 Sep 2010 04:44:47 +0000 (00:44 -0400)
committerJohn Resig <jeresig@gmail.com>
Tue, 21 Sep 2010 04:44:47 +0000 (00:44 -0400)
src/data.js

index cc02715..dda1683 100644 (file)
@@ -152,12 +152,15 @@ jQuery.fn.extend({
                                if ( data === undefined && this[0].nodeType === 1 ) {
                                        data = this[0].getAttribute( "data-" + key );
 
-                                       if ( data != null ) {
+                                       if ( typeof data === "string" ) {
                                                data = data === "true" ? true :
                                                        data === "false" ? false :
                                                        data === "null" ? null :
                                                        rnum.test( data ) ? parseFloat( data ) :
                                                        data;
+
+                                       } else {
+                                               data = undefined;
                                        }
                                }
                        }