message appears in dom as it's typed