使用jquery在输入和文本区域中隐藏/显示标签

使用jquery在输入和文本区域中隐藏/显示标签,jquery,input,label,show-hide,Jquery,Input,Label,Show Hide,我正在尝试使用输入和文本区域标签隐藏/显示功能,但我的Jquery技能还不够好 你们可能已经看过一千遍了,我上下翻阅了这本书,但我还是没能弄明白 代码的第一部分工作正常,当元素获得焦点时,它将文本更改为较浅的颜色,当您开始键入时,它将消失。它可能写得不太好,但我现在已经尽力了 $("input, #email_text").focusin(function(){ $("label.input", this).css("color", "#f3f3f3"); }); $("input, #e

我正在尝试使用输入和文本区域标签隐藏/显示功能,但我的Jquery技能还不够好

你们可能已经看过一千遍了,我上下翻阅了这本书,但我还是没能弄明白

代码的第一部分工作正常,当元素获得焦点时,它将文本更改为较浅的颜色,当您开始键入时,它将消失。它可能写得不太好,但我现在已经尽力了

$("input, #email_text").focusin(function(){

$("label.input", this).css("color", "#f3f3f3");

});

$("input, #email_text").keypress(function(){

$("label.input", this).fadeOut("normal");

});
在这里,我希望脚本执行以下操作:如果元素失去焦点,我希望labeltext淡入,如果用户在字段中写了什么,则例外。我可能把if/else语句搞砸了,而且我还没有掌握.val函数

$("input, #email_text").focusout(function() {

if($("#email_text").val() !="") {

$("label.input", this).fadeIn("normal").css("color", "#f3f3f3");

}} else { 

("label.input", this).hide();

});
谁能帮我一下吗?我有点放弃了,也许应该从更基本的东西开始

提前谢谢

问候,

维加尔·瓦尔斯塔德

编辑:

html如下所示:

<div id="email_text">
<label class="input">Please leave a message..</label>
<textarea name="message" id="email_text"><?php echo "</tex" . "tarea>"; ?>
</div>

请留言。。

你能发布html吗?哦,你有几个错误,
}否则{
应该是
}否则{
然后是
})应该是
})谢谢你的回复,我已经在原来的问题中添加了html。当我尝试回答adeneo时,我收到一个javascript错误消息:$(“输入,#email_text”)。on不是函数我读过“$不是函数”,据我所知这很常见?如果您在一个站点上使用多个库。但是我使用的唯一库是jQuery,所以我不明白为什么会发生这个错误。除非它与php有关?我在jQuery论坛上发现了这一点,我使用的是1.6版本,而我本应该使用1.7版本的。on函数是最近添加的,不在1.6版本的脚本中。
$("input, #email_text").on({
    focus: function() {
        $("label.input", this).css("color", "#f3f3f3");
    },
    keyup: function() {
        $("label.input", this).fadeOut();
    },
    blur: function() {
        if($("#email_text").val() !="") {
            $("label.input", this).css("color", "#f3f3f3").fadeIn();
        } else { 
            $("label.input", this).hide();
        }
    }
});