lib/conbo.js
function()
	{
		this.dispatchEvent(new conbo.ConboEvent(conbo.ConboEvent.REMOVE));
		
		if (this.data)
		{
			this.data = undefined;
		}
		
		if (this.subcontext && this.subcontext != this.context)
		{
			this.subcontext.destroy();
			this.subcontext = undefined;
		}
		
		if (this.context)
		{
			this.context
				.uninjectSingletons(this)
				.removeEventListener(undefined, undefined, this)
				;
			
			this.context = undefined;
		}
		
		var children = this.querySelectorAll('.cb-view', true);

		while (children.length)
		{
			var child = children.pop();

			try { child.cbView.remove(); }
			catch (e) {}
		}

		this.unbindView()
			.detach()
			.removeEventListener()
			.destroy()
			;
		
		return this;
	}
function()
	{
		this.dispatchEvent(new conbo.ConboEvent(conbo.ConboEvent.REMOVE));
		
		if (this.data)
		{
			this.data = undefined;
		}
		
		if (this.subcontext && this.subcontext != this.context)
		{
			this.subcontext.destroy();
			this.subcontext = undefined;
		}
		
		if (this.context)
		{
			this.context
				.uninjectSingletons(this)
				.removeEventListener(undefined, undefined, this)
				;
			
			this.context = undefined;
		}
		
		var children = this.querySelectorAll('.cb-view', true);

		while (children.length)
		{
			var child = children.pop();

			try { child.cbView.remove(); }
			catch (e) {}
		}

		this.unbindView()
			.detach()
			.removeEventListener()
			.destroy()
			;
		
		return this;
	}
function ( ) { this . dispatchEvent ( new conbo . ConboEvent ( conbo . ConboEvent . REMOVE ) ) ; if ( this . data ) { this . data = undefined ; } if ( this . subcontext && this . subcontext != this . context ) { this . subcontext . destroy ( ) ; this . subcontext = undefined ; } if ( this . context ) { this . context . uninjectSingletons ( this ) . removeEventListener ( undefined , undefined , this ) ; this . context = undefined ; } var children = this . querySelectorAll ( '.cb-view' , true ) ; while ( children . length ) { var child = children . pop ( ) ; try { child . cbView . remove ( ) ; } catch ( e ) { } } this . unbindView ( ) . detach ( ) . removeEventListener ( ) . destroy ( ) ; return this ; }
Remove and destroy this View by taking the element out of the DOM,
unbinding it, removing all event listeners and removing the View from
its Context.

You should use a REMOVE event handler to destroy any event listeners,
timers or other persistent code you may have added.

@returns	{this}
Remove and destroy this View by taking the element out of the DOM unbinding it removing all event listeners and removing the View from its Context .