jsBenchmarker

Source of "native_event_bubbling"

Back
/**
 * @text This isn't a benchmark, just an experiment.
 * @html <button>Bubble the event 'foo'</button><br />
 */

var button = document.getElementsByTagName('button')[0];

if( document.body.addEventListener )
	document.body.addEventListener( 'foo', handler, false );
else
	document.body.attachEvent( 'onkeypress', handler );

function handler(e){
	alert('bubbled!');
};

button.onclick = function(e){
	if( document.createEventObject ){
		e = document.createEventObject();
		this.fireEvent('onkeypress',e);//fireEvent doesn't work for custom events
	}else{
		e = document.createEvent('Events');
		e.initEvent('foo',true, true);//the second argument is 'bubbles?'
		this.dispatchEvent(e);
	}
};