A javascript push mechanism and event listener support