我想做简单的事情:
如果输入字段为空 - 不透明度:0.5
如果字段不为空 - 不透明度为 1。
我遇到了一个问题: 当浏览器自动完成用户名或密码时 - 不会触发事件。
显然这是行不通的:
.change()
这也行不通:
//CSS
selector:not(:empty){stuff1}
selector:empty{stuff2}
但我找不到任何其他有效的明确解决方案。
编辑:
我知道如何更改不透明度。
我知道如何在 jQuery 中选择空或非空字段。
我不知道如何在浏览器完成登录表单时触发事件。
这可以在页面加载时进行,但也可以在以后进行(比如他自己输入用户名,然后自动输入密码)
最佳答案
$(function(){
if($('#myInput').val().length === 0){
$('#myInput').fadeTo(0, 0.5);
}
});
您可以检查值长度....这会在文档准备就绪时触发。
任何 change
处理程序都是多余的,因为它们很可能是输入值...但我想你可以将它附加到一个更改处理程序,如果你通缉。您只需小心使用 $(this)
来定位输入,这样您就不会在有人开始输入一个输入时淡出整个表单。
关于javascript - 如果字段为空 - 做一件事情,如果不做其他事情(jQuery vs 浏览器字段自动完成),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13462523/