这是我的小提琴
一切都写在小提琴中。
问题是什么:当我选择开始在输入中输入内容时,我希望文本消失。
如果我专注于输入,我想要
消失,只有在我没有输入任何内容时才会重新出现,
如果我在文本输入中输入了某些内容,我希望隐藏保持这种状态。
老实说,我不知道该怎么做,我尝试了一下以表明我的意思
非常感谢你的帮助!
这是我的小提琴
一切都写在小提琴中。
问题是什么:当我选择开始在输入中输入内容时,我希望文本消失。
如果我专注于输入,我想要
消失,只有在我没有输入任何内容时才会重新出现,
如果我在文本输入中输入了某些内容,我希望隐藏保持这种状态。
老实说,我不知道该怎么做,我尝试了一下以表明我的意思
非常感谢你的帮助!
看起来您尝试运行的小提琴中有一些错误..我创建了一个新的小提琴,并且由于某种原因似乎工作正常..
$('.type').on('focus', function(){
$("p").hide();
});
$('.type').on('keyup blur', function(){
if($('.type').val() == ''){
$("p").show();
}
});
检查这个FIDDLE
使用 keyup 和 blur 事件来获得您想要的功能..
答案就在这个小提琴中:http: //jsfiddle.net/yLK5c/3/
$(".type").on('focus keyUp',function(){
if ($(this).val() == "") {
$(this).attr('placeholder',"");
}
});
$(".type").blur(function(){
if ($(this).val() == "") {
$('p').hide();
} else {
$('p').show();
}
$(this).attr('placeholder',"type something");
});
我更新了你的小提琴,使用'on',并使用模糊。
$(document).ready(function(){
$(".type").on('focus', function(){
$("p.explanatory").hide();
}).on('blur', function() {
if($('.type').val() == '')
{
$("p.explanatory").show();
}
});
});
这是我的工作! http://jsfiddle.net/M2Z88/5/
正如 João 指出的那样,您应该使用该blur
事件来检测您何时失去焦点。但是,如果文本框中有任何文本,您还希望文本消失。这样做的方法是侦听keyup
事件,然后检查编辑框中的值。(如果使用keydown
,则字母不会添加到文本框中,因此您将成为后面的字符。)
我想你想要的是这样的:
$(".type").focus(function(){
if( $(this).val() == '' ) $("p").hide();
});
$(".type").blur(function(){
$("p").show();
});
$(".type").keyup(function(){
if( $(this).val() == '' ) $("p").hide();
else $("p").show();
});
JsFiddle:http: //jsfiddle.net/Mz95q/
这是我的食谱
$(document).ready(function(){
$(".type")
.focus(function(){
$("p").hide()
;})
.blur(function () {
if (!$(this).val()) {
$("p").show()
;}
});
});