Javascript 为什么这在IE中不起作用
我只想创建一个带有初始化值的输入。然后当聚焦时,它清除文本字段。但是,在模糊时,如果字段为空,则应返回其初始化值。它还可以用于密码字段。这是我想到的,它在ie中不起作用 错误消息Javascript 为什么这在IE中不起作用,javascript,mootools,Javascript,Mootools,我只想创建一个带有初始化值的输入。然后当聚焦时,它清除文本字段。但是,在模糊时,如果字段为空,则应返回其初始化值。它还可以用于密码字段。这是我想到的,它在ie中不起作用 错误消息 IE在交换输入时出现问题。键入属性 如果我没记错的话,在不同类型之间进行切换似乎是行不通的——我认为他们这样做是为了省去一些痛苦 例如,将文本字段更改为文件字段具有安全含义,字段.set(“value”,“c:\autoexec.bat”).set(“type”,“file”).getParent().send()
IE在交换
输入时出现问题。键入属性
如果我没记错的话,在不同类型之间进行切换似乎是行不通的——我认为他们这样做是为了省去一些痛苦
例如,将文本
字段更改为文件
字段具有安全含义,字段.set(“value”,“c:\autoexec.bat”).set(“type”,“file”).getParent().send()
将密码
更改为文本
,同样是狡猾的(会以纯文本显示密码)。将文本
更改为复选框
/收音机
有回流和行为问题
我可以继续,但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' );
}
}
});
});