added unbindEvent feature and implement reset function.