input输入框在获得或失去焦点时隐藏或显示文字,这样的焦点效果想必很多朋友在填写form表格的时候都曾见识过吧,本文使用jquery实现以下,感兴趣的朋友可以参考下哈

大家可以看效果图的搜索输入框,默认显示着“用户名/Email”的提示,当这个 input 输入框获得焦点时,就自动清空等待用户输入,当用户啥也没输入就离开这个 input 输入框时,输入框内又再次显示“用户名/Email”的提示。是不是很常见?很多搜索、登录、表单都会用到这个效果,但是我看了N多个网站,有90%以上是这么实现的:

<input type="text" value="搜索关键字" onfocus="if(this.value == '搜索关键字') this.value = ''" onblur="if(this.value =='') this.value = '搜索关键字'" /> 

我是非常反对把 javascript 写在 html 标签里的,这和 style 写在 html 标签里一样,虽然不违反 W3C 标准,但也不推荐这么写。因为: 
1.完全没有复用性可言,如果是个表单,输入框很多,每个都需要这样的效果,那就每个都这么处理吗? 
2.如果要修改其中的提示文字,费时费力又不好维护。 
3.我们倡导结构(html)、表现(css)、行为(javascript)三者分离,这才是一个好的页面。 
那要怎么写才能实现这个效果,而且既有复用性,又好维护,又不需要把 js 写进 html 里呢? 
具体方法如下: 
首先肯定是引入jQuery 
Html代码:

<div><input type="text" value="提示测试" class="input_test" /></div>
<div><input type="text" value="请输入搜索关键" class="input_test" /></div>

jQuery代码:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
$('.input_test').bind({
focus:function(){
if (this.value == this.defaultValue){
this.value="";
}
},
blur:function(){
if (this.value == ""){
this.value = this.defaultValue;
}
}
});
})
</script>

只要在实现的input输入框加上”input_test”这个class就可以轻松实现了

最新文章

  1. Holographic Remoting Player
  2. MyBatis配置文件解析
  3. Rsyslog配置文件详解
  4. BZOJ 3171 循环格(费用流)
  5. MAT Memory Analyzer Tool 插件安装(图解)
  6. asp.net实现 EXCEL数据导入到数据库功能
  7. TCP的拥塞控制(转载)
  8. QT 打开文件对话框汇总
  9. Java多线程与并发模型之锁
  10. 命令行界面的C/S聊天室应用 (Socket多线程实现)
  11. 从 &lt;sofa:XXX&gt; 标签开始看 SOFA-Boot 如何融入 Spring
  12. Docker在Linux上运行NetCore系列(二)把本地编译好的镜像发布到线上阿里云仓库
  13. javascript:jQuery tablesorter 2.0
  14. 服务容错保护断路器Hystrix之七:做到自动降级
  15. winform 可拖动无边框窗体解决办法
  16. 百度自动推送js
  17. Android APK 签名比对(转)
  18. Django rest framework(2)----权限
  19. java 的==和equals的区别(二)
  20. Refused to execute script from &#39;....js&#39; because its MIME type (&#39;text/html&#39;) is not executable, and strict MIME type checking is enabled.md

热门文章

  1. node.js(四)path优化(路径优化)
  2. some knowledge
  3. 关于用 random 生成伪随机数的一个手笔
  4. 通过一个正则表达式,让SQL Server数据库的带参sql也支持位置参数语法!
  5. OCI_INVALID_HANDLE 什么原因
  6. leetcode Valid Parentheses python
  7. codeforces 13E . Holes 分块
  8. echarts实现上海地域PM值(map、timeline)
  9. oc swift 混编 特技
  10. cocos2d-x -------之笔记篇 动画的实现