我试图制作一个 jQuery 代码来在单击时删除我的(电子邮件)输入字段的值,并且在未单击时(.blur())该值(与以前相同)应该返回到输入字段,除非有什么其他是写的。当我单击输入字段时它起作用,文本消失并在我单击时返回,但是当我写一些东西并删除它时,之前的值/文本不会回来.. 这是我的代码,应用于简单的输入 type="email"
$(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);
};
});
});
最佳答案
您正在尝试制作自己的 placeholder .不错,但更自然和有效的是使用原生:
<input type="email" placeholder="Skriv din email her.." >
演示:http://jsfiddle.net/E9EzZ/2/
如果您仍然想创建自己的版本,请按如下方式修复您的代码:
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;
};
});
演示:http://jsfiddle.net/E9EzZ/1/
关于javascript - jQuery 在单击时删除输入字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23896553/