dist/bower_components/jquery/src/attributes.js
function( elem, name, isXML ) {
			var ret;
			return isXML ?
				undefined :
				(ret = elem.getAttributeNode( name )) && ret.value !== "" ?
					ret.value :
					null;
		}
function( elem, name, isXML ) {
			var ret;
			return isXML ?
				undefined :
				(ret = elem.getAttributeNode( name )) && ret.value !== "" ?
					ret.value :
					null;
		}
function ( elem , name , isXML ) { var ret ; return isXML ? undefined : ( ret = elem . getAttributeNode ( name ) ) && ret . value !== "" ? ret . value : null ; }
Some attributes are constructed with empty-string values when not defined
Some attributes are constructed with empty - string values when not defined