我试图制作一个jQuery代码,以便在单击时删除my(email)输入字段的值,并且当未被单击时(.blur())该值(与之前相同)应该返回到输入字段,除非某些内容别的写的。当我单击输入字段时文本消失并在我点击时返回,但是当我写东西并删除它时,之前的值/文本不会再返回.. 继承我的代码,应用于简单的输入类型="电子邮件"
$(document).ready(function() {
var default_email = 'Skriv din email her..';
$('input[type="email"]').attr('value', default_email).focus(function() {
if ( $ (this).val() == default_email) {
$(this).attr('value', '');
}
}).blur(function() {
if($(this).val() == '') {
$(this).attr('value', default_email);
};
});
});
答案 0 :(得分:1)
您正在尝试制作自己的placeholder。很好,但更自然和有效的是使用原生:
<input type="email" placeholder="Skriv din email her.." >
如果您仍想创建自己的版本,请按以下方式修改代码:
var default_email = 'Skriv din email her..';
$('input[type="email"]').val(default_email)
.focus(function () {
if (this.value == default_email) {
this.value = '';
}
})
.blur(function () {
if (this.value == '') {
this.value = default_email;
};
});
答案 1 :(得分:1)
检查这个小提琴:http://jsfiddle.net/LfNZu/
只需将功能attr()
更改为val()