lib/abaaso.js
function ( obj, args ) {
		args = args || {};

		utility.iterate( args, function ( v, k ) {
			if ( regex.element_update.test( k ) ) {
				obj[k] = v;
			}
			else if ( k === "class" ) {
				!string.isEmpty( v ) ? element.klass( obj, v ) : element.klass( obj, "*", false );
			}
			else if ( k.indexOf( "data-" ) === 0 ) {
				element.data( obj, k.replace( "data-", "" ), v );
			}
			else if ( k === "id" ) {
				var o = observer.listeners;

				if ( o[obj.id] !== undefined ) {
					o[k] = o[obj.id];
					delete o[obj.id];
				}
			}
			else {
				element.attr ( obj, k, v );
			}
		});

		return obj;
	}
function ( obj, args ) {
		args = args || {};

		utility.iterate( args, function ( v, k ) {
			if ( regex.element_update.test( k ) ) {
				obj[k] = v;
			}
			else if ( k === "class" ) {
				!string.isEmpty( v ) ? element.klass( obj, v ) : element.klass( obj, "*", false );
			}
			else if ( k.indexOf( "data-" ) === 0 ) {
				element.data( obj, k.replace( "data-", "" ), v );
			}
			else if ( k === "id" ) {
				var o = observer.listeners;

				if ( o[obj.id] !== undefined ) {
					o[k] = o[obj.id];
					delete o[obj.id];
				}
			}
			else {
				element.attr ( obj, k, v );
			}
		});

		return obj;
	}
function ( obj , args ) { args = args || { } ; utility . iterate ( args , function ( v , k ) { if ( regex . element_update . test ( k ) ) { obj [ k ] = v ; } else if ( k === "class" ) { ! string . isEmpty ( v ) ? element . klass ( obj , v ) : element . klass ( obj , "*" , false ) ; } else if ( k . indexOf ( "data-" ) === 0 ) { element . data ( obj , k . replace ( "data-" , "" ) , v ) ; } else if ( k === "id" ) { var o = observer . listeners ; if ( o [ obj . id ] !== undefined ) { o [ k ] = o [ obj . id ] ; delete o [ obj . id ] ; } } else { element . attr ( obj , k , v ) ; } } ) ; return obj ; }
Updates an Element

@method update
@param  {Mixed}  obj  Element
@param  {Object} args Collection of properties
@return {Object}      Element
Updates an Element