Upgrade to @harsha’s answer
I found that to make solution work with Firefox,
we need temporary reset value to “not-equal of value”, then set it back
<input type="text" autofocus value="value text" onfocus="var temp_value=this.value; this.value=""; this.value=temp_value" />