`
mathsfan
  • 浏览: 578793 次
  • 性别: Icon_minigender_1
  • 来自: 浙江省杭州市
社区版块
存档分类
最新评论

input输入效果控制onfocus和onblur事件(转)

    博客分类:
  • js
阅读更多
以前看到alibaba上的注册右边的提示信息效果很不错,总想拿过来自己用.

参考建行的代码.

主要思想是:

在输入框input 里面利用onfocus 和onblur两个事件.分别将提示信息的class改变

.tip_on, .tip_off

代码如下

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>中国建设银行 个人网上银行</title>
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />
<link href="/V5/css5/before_login.css" _fcksavedurl=""/V5/css5/before_login.css"" _fcksavedurl=""/V5/css5/before_login.css"" rel="stylesheet" type="text/css" />
</head>
<style type="text/css">
.tip_off {
background:#fff url(tip_off.gif) 4px 6px no-repeat;
padding:5px 3px 2px 15px;
color:#777;
}
.tip_on {
border:1px solid #090;
background:#e9fde9 url(tip_on.gif) 4px 6px no-repeat;
padding:4px 3px 1px 14px;
color:#444;
}
</style>

<body bottommargin="0" bgproperties="0" leftmargin="0" marginheight="0" marginwidth="0" rightmargin="0" topmargin="0">
<form name="jhform" method="post" action="/app/B2CMainPlatV5?CCB_IBSVersion=V5" target="_parent" onsubmit="return jiamiMima();return go1();">
<div id="Page_content">
<div class="reg_title"></div>
<div class="Area_content">
  <table width="70%"  border="0" cellspacing="0" cellpadding="0">
<tr>
<td id="text_user" width="150" height="50" class="text_content login_big"> 用户昵称/证件号码:</td>
<td width="255" height="50" class="text_content"><input name="USERID" type="text" size="20" minLength="1" maxLength="20" title="用户昵称/证件号码"
onfocus="hidekeyboard=true;login_2.className='tip_on'" onblur="login_2.className='tip_off'" value=''/></td>
<td width="280" height="50" class="text_content">
<div id="login_2" class="tip_off">输入您在注册网上银行时使用的证件号码或您设置登陆方式的网上银行用户名(昵称) / 证件号码</div>
</td>
</tr>
<tr>
<td width="120" height="50" class="text_content login_big">登录密码:</td>
<input type="hidden" name="TXCODE" value="100101">
<input type="hidden" name="CCB_PWD_MAP_GIGEST" value="">
<input type="hidden" name="errURL" value="/app/V5/CN/STY1/login.jsp">
<td height="50" class="text_content"><input name="LOGPASS" type="password" size="20" minLength="6"  maxLength="12" onfocus="hidekeyboard=true;login_3.className='tip_on'" title="登录密码" onblur="login_3.className='tip_off'" />
</td>
<td width="280" height="50" class="text_content">
<div  id="login_3" class="tip_off">输入您设置的网上银行登录密码</div>         
</td>
</tr>
<tr>
<td width="120" height="50" class="text_content login_big">附加码:</td>
<td height="50" class="text_content">
<input name="PT_CONFIRM_PWD" type="text" onfocus="hidekeyboard=true;login_4.className='tip_on'" onblur="login_4.className='tip_off'" minLength="1" maxLength="5" title="附加码" /></td>
<td width="280" height="50" class="text_content">
<div id="login_4" class="tip_off">输入右侧图片中的字符 </div></td>
</td></tr>
</table>
</form>
</body>
</html>
效果图:
PS:个人感觉还不错,后面的文字的背景色会随着前面的焦点位置的改变而改变,保存下来看看。
文章转自:http://blog.csdn.net/kemy88/archive/2007/03/01/1517698.aspx
分享到:
评论
2 楼 jinweijieloveszhuye 2007-06-28  
oops... curObjId.id + "prompt" 应写成 curObjId.id + "_prompt"

1 楼 jinweijieloveszhuye 2007-06-28  
可以考虑把输入框自己的颜色变一下,就像safari form的效果一样

上面这段代码还是有改进的地方的,我觉得这样写会比较好一点:

html:
<input type="text" id="field1" onclick="doFocus(this);"/> <span id="filed1_prompt">blar...blar...</span>

javascript:

<script type="text/javascript">

var curObjId="";

function doFocus(obj){
//do some focus
  document.getElementById( obj.id + "prompt" ).className="someFocusClassName";

//restore the previous obj's class name
  document.getElementById( curObjId.id + "prompt" ).className="someNormalClassName";

//update the current object id
curObjId = obj.id;

//and, here, you can do some other effects like highlight the textbox it self
}

</script>

这样做可以把html代码和js分开,容易维护些,也没有很多重复代码,不知楼主觉得如何?欢迎探讨

相关推荐

    JS:onfocus和onblur 事件应用举例

    在JavaScript编程领域,事件处理是实现用户交互的关键技术之...无论是简单的高亮效果还是复杂的表单验证,`onfocus`和`onblur`都能发挥重要作用。掌握并灵活应用这些事件,对于任何前端开发者来说都是一项宝贵的技能。

    JavaScript的onfocus与onblur用法

    JavaScript是Web开发中不可或缺的一部分,尤其在处理用户交互时,事件监听器如`onfocus`和`onblur`起着至关重要的作用。这两个事件主要应用于表单元素,但也可以用于任何可聚焦的HTML元素,例如按钮、链接或文本...

    form表单中的onblur事件

    在网页开发中,表单(Form)是用户与页面交互的重要元素,用于收集用户输入的信息。在HTML中,我们可以利用各种事件来控制表单元素...结合其他事件和JavaScript功能,我们可以构建出更加智能和用户友好的Web应用程序。

    【JavaScript源代码】JavaScript onblur与onfocus事件详解.docx

    onfocus和onblur事件是JavaScript中用于处理用户交互的重要工具,它们允许开发者在用户与网页元素交互时执行特定的逻辑,提高用户体验并确保数据的有效性。无论是自动选中文本,还是实时验证输入,这两个事件都提供...

    OnFocus与OnBlur的例子区别

    ### onblur事件 与`onfocus`相对,`onblur`事件会在表单元素失去焦点时触发。这通常发生在用户点击输入框外的区域,或者使用Tab键切换到其他输入框时。`onblur`事件可以用来进行输入验证,确保用户输入的信息符合...

    Js中的onblur和onfocus事件应用介绍

    本文以文本框获得和失去焦点为例简单讲解onfocus和onblur的应用。 一. onfocus(获得焦点事件) 当一个文本框获得焦点时,它里面的文本就像“好123”网站上的百度搜索输入框那样全部被自动选中,这样的操作可以利用...

    详解HTML onfocus获得焦点和onblur失去焦点事件

    `onfocus`事件是在一个元素(通常是可聚焦的元素如`&lt;input&gt;`、`&lt;select&gt;`或`&lt;textarea&gt;`)获取到用户输入焦点时触发的。当用户通过键盘、鼠标或其他交互方式切换到某个元素时,`onfocus`事件就会被激活。这可以用来...

    老生常谈onBlur事件与onfocus事件(js)

    onBlur事件是光标失去焦点时发生的事件。 可以编如下例子 1.html &lt;HTML&gt; &lt;HEAD&gt; &lt;TITLE&gt;使用onBlur事件处理程序&lt;/TITLE&gt; &lt;/HEAD&gt; &lt;BODY BGCOLOR=lavender&gt; &lt;FORM name=F1&...

    文本框(input)获取焦点(onfocus)时样式改变的示例代码

    通过JavaScript函数 `focusInput`,我们遍历所有`&lt;input&gt;`元素,为非按钮、非提交、非重置类型的输入框添加`onfocus`和`onblur`事件监听器。当文本框获取焦点时,添加`.focusInput`类;失去焦点时,移除`.focusInput...

    文本框取鼠标事件文本框取鼠标事件

    具体而言,使用 `onfocus` 和 `onblur` 事件可以有效地处理文本框的焦点获取与失去事件,从而实现动态的用户提示功能。这种技术广泛应用于Web应用的前端开发中,对于提升用户体验具有重要作用。

    input之怎么清除默认值

    方法二:使用 onfocus 和 onblur 事件 ```html &lt;input name="username" type="text" value="first name.last name" size="15" maxlength="60" onfocus="value=''" onblur="if(!value)value=defaultValue"&gt; ``` 在...

    html的DOM中Event对象onblur事件用法实例

    在JavaScript中,`onblur`事件还可以与其他DOM事件(如`onclick`、`onfocus`等)结合使用,以实现更复杂的交互逻辑。例如,当一个元素获得焦点后,可以使用`onfocus`事件来改变其样式,而当它失去焦点时,通过`...

    第07讲JavaScript脚本语言三.ppt

    以下是一个onFocus和onBlur事件的例子: ```html &lt;INPUT TYPE="text" VALUE="" NAME="txtName" onBlur="disp()" onFocus="valueCheck()"&gt; ``` 这段代码中,当用户离开文本框(onBlur事件)时,会调用disp()函数,...

    input框中出现提示文字(兼容ie 火狐 谷歌)

    这段代码会遍历页面上的所有`&lt;input&gt;`元素,如果找到带有`placeholder`属性的输入框,就会添加相应的`onfocus`和`onblur`事件处理函数,从而实现与`placeholder`类似的功能。 在火狐和谷歌等支持`placeholder`属性...

    兼容IE7、IE8、IE9的input type=&quot;number&quot;插件

    2. **事件监听**:添加事件监听器,如`onchange`、`onfocus`和`onblur`,以便在用户输入时检查数值的有效性,确保其在设定的范围内,并按照步进值进行调整。 3. **格式化显示**:为了模拟上下箭头的效果,可以添加...

    HTML5-input表单控件调用代码_html5_表单_input_代码_控件_

    HTML5的`input`标签是构建交互式表单的关键,提供了更多的类型、属性和事件,让开发者可以创建更加丰富和功能强大的用户界面。 一、`input`标签基础 `input`标签在HTML中用于创建各种形式的用户输入控件。基本语法...

    Javascript事件的定义.doc

    表单提交按钮`&lt;input type="submit"&gt;`和重置按钮`&lt;input type="reset"&gt;`则有`click`事件,分别对应于提交和重置表单。 二、事件处理属性: JavaScript通过在HTML元素上设置特定的属性来响应事件,如`onBlur`、`...

Global site tag (gtag.js) - Google Analytics