function cls(){ 
//捕获触发事件的对象,并设置为以下语句的默认对象 
with(event.srcElement) 
     //如果当前值为默认值,则清空 
if(value==defaultValue)
value=""
}function res(){ 
//捕获触发事件的对象,并设置为以下语句的默认对象 
with(event.srcElement) 
//如果当前值为空,则重置为默认值 
if(value=="") 
value=defaultValue 
} 这段Js是控制文本框获得焦点的时候让提示信息消失的,我现在想达到获得焦点的时候 提示信息不消失 而是变成灰色斜体 等输入的时候提示信息才消失的效果 能否在这段JS里面加工?急急急!谢谢!

解决方案 »

  1.   

    你可以采用下面的方法,兼容所有浏览器
    http://webdesignerwall.com/demo/html5-placeholder-text/
      

  2.   

    那你再注册个onkeypress事件,触发这个事件时删除提示信息,将字体变成黑色正常的字体,再注册一个onBlur 事件判断用户是否真的进行了输入,如果没有再将提示信息显示出来
      

  3.   

    给LZ用jq来写了一段你要的效果<!DOCTYPE html>
    <html>
    <head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>
        <script type="text/javascript">
         $(function(){
    $("#title").focus(function(){
    if($(this).val()==$(this)[0].defaultValue)
    $(this).css("color","#ccc");
    })
    $("#title").keydown(function(){
    if($(this).val()==$(this)[0].defaultValue)
    $(this).val("");
    $(this).css("color","#333");
    })
    })
        </script>
    </head>
    <body>
    <input type="text" id="title" value="请输入标题" />
    </body>
    </html>