Javascript 单击时清除输入搜索文本无效
为什么这个基本脚本不起作用?其他时候我已经用过了,它可以用了,但现在不起作用了Javascript 单击时清除输入搜索文本无效,javascript,css,html,Javascript,Css,Html,为什么这个基本脚本不起作用?其他时候我已经用过了,它可以用了,但现在不起作用了 <form name="form1"> <input type="search" placeholder="Search..." required="required" onfocus="if(this.value == 'Search...') {this.value=''}" onblur="if(this.value == ''){this.value ='Search...'}" /&g
<form name="form1">
<input type="search" placeholder="Search..." required="required" onfocus="if(this.value == 'Search...') {this.value=''}" onblur="if(this.value == ''){this.value ='Search...'}" />
<button type="submit"><img src="search-icon-2.png" /></button>
</form>
当您应该更改
占位符
属性时,您正在检查并更改值
属性:
<input type="search" placeholder="Search..." required="required" onfocus="if(this.placeholder == 'Search...') {this.placeholder=''}" onblur="if(this.placeholder == ''){this.placeholder ='Search...'}" />
请参阅此答案以了解其他选项:您可以删除onfocus和onblur,因为我已经测试过,它在chrome浏览器上运行良好。它是用灰色写的(作为提示文本而不是普通文本)。删除占位符标记,效果很好您正在更改输入值,但您有一个
占位符属性。使用脚本或使用占位符
标记。两者都会以同样的方式工作,警告只是一个浏览器支持问题。谢谢,我有使用该值的习惯,所以我甚至注意到我做错了。这个答案与占位符
属性已经在做的事情完全重复。为什么要删除占位符…它已经“内置”了根据定义,一旦用户开始键入或字段不再为空,它将不再显示…不,在某些浏览器中,当您关注文本框时,占位符文本将不会清除。这就是OP想要的。不,在某些浏览器中,占位符不起作用:
input:focus::-webkit-input-placeholder { color:transparent; }
input:focus:-moz-placeholder { color:transparent; }