我想做的就是创建一个具有初始值的输入。然后在聚焦时清除文本字段。但是在模糊时,当字段为空时,它应该返回其初始值。它也应该与密码字段一起使用。这就是我想到的那就是它没有在ie。
工作错误讯息
$$('.default-text').each(function(item){
item.store('default-value', item.get('value'));
if(item.get('type') == 'password') {
item.store('default-type', 'password');
item.set('type', 'text');
item.addEvent('keyup',function(el){
if(item.get('value') != item.retrieve('default-value')) {
item.set('type', 'password');
}
});
}
item.addEvent('focus',function(el){
if(item.get('value') == item.retrieve('default-value')) {
item.set('value','');
}
});
item.addEvent('blur',function(){
if(item.get('value') == '') {
item.set('value', item.retrieve('default-value'));
if(item.retrieve('default-type') == 'password') {
item.set('type', 'text' );
}
}
});
});
答案 0 :(得分:0)
IE在交换input.type
属性时遇到问题。
如果我没记错的话,在类型之间交换似乎不起作用 - 我认为他们这样做是为了挽救自己一些悲伤。
例如,将text
字段更改为file
字段会产生安全隐患field.set("value", "c:\autoexec.bat").set("type", "file").getParent().send()
。
将password
更改为text
,也是狡猾的(以明文形式显示密码)。将text
更改为checkbox
/ radio
会产生重排和行为问题。
我可以继续,但IE团队只是认为最好不要允许这些并结束它们,而不是处理每个案例。
你需要在某种程度上重新思考你的逻辑。