jquery搜索框效果实现方法


Posted in Javascript onJanuary 16, 2015

本文实例讲述了jquery搜索框效果实现方法。分享给大家供大家参考。具体实现方法如下:

<html>

<head>

<title>jquery:搜索框效果</title>

<script type="text/javascript" src="jquery-1.8.2.min.js"></script>

<script type="text/javascript">

 $(function(){

  $('#search').val("请输入搜索内容").addClass("c1");

  $('#search').focus(function(){//搜索框获得焦点时

   $('#search').val("").addClass("c2");

  });

  $('#search').blur(function(){//搜索框失去焦点时

   if($('#search').val()==""){

    $('#search').val("请输入搜索内容").attr("class","c1");

   }

  });

 });

</script>

<style type="text/css">

.c1{color:gray;font-style:italic;}

.c2{color:#000;font-style:normal;}

</style>

</head>

<body>

<input type="text" size="38" id="search" /><button>搜索</button>

</body>

</html>

补充说明:有些不完美,如果搜索框原来还有其它样式,当失去焦点时,如果采用例子中的代码,那其它样式也会没了,因为attr()为设置样式。如果采用addClass()为追加样式,也不怎么合适,虽然能达到效果,但原来的c2样式还在,显示时被c1样式替换而已(这需要c1样式写在c2后面)。好像没有替换样式的方法?

修改后解决上面的问题,较完美版本(代码还可以优化更简单)

<html>

<head>

<title>jquery:搜索框效果</title>

<script type="text/javascript" src="jquery-1.8.2.min.js"></script>

<script type="text/javascript">

 $(function(){

  $('#search').val("请输入搜索内容").addClass("c1");

  $('#search').focus(function(){//搜索框获得焦点时

   if($('#search').val()=="请输入搜索内容"){

    $('#search').val("").addClass("c2").removeClass("c1");

   }

  });

  $('#search').blur(function(){//搜索框失去焦点时

   if($('#search').val()==""){

    $('#search').val("请输入搜索内容").addClass("c1").removeClass("c2");

   }

  });

 });

</script>

<style type="text/css">

.c1{color:gray;font-style:italic;}

.c2{color:#000;font-style:normal;}

</style>

</head>

<body>

<input type="text" size="38" id="search" /><button>搜索</button>

</body>

</html>

希望本文所述对大家的jQuery程序设计有所帮助。

Javascript 相关文章推荐
JavaScript 编程引入命名空间的方法
Jun 29 Javascript
JavaScript 事件参考手册
Dec 24 Javascript
javascript之学会吝啬 精简代码
Apr 25 Javascript
Javascript 自适应高度的Tab选项卡
Apr 05 Javascript
javascript操作数组详解
Dec 17 Javascript
javascript基于prototype实现类似OOP继承的方法
Dec 16 Javascript
JavaScript浏览器对象之一Window对象详解
Jun 03 Javascript
详解vue-router2.0动态路由获取参数
Jun 14 Javascript
在Node.js中将SVG图像转换为PNG,JPEG,TIFF,WEBP和HEIF格式的方法
Aug 22 Javascript
JS中this的4种绑定规则详解
Feb 04 Javascript
vue scroll滚动判断的实现(是否滚动到底部、滚动方向、滚动节流、获取滚动区域dom元素)
Jun 11 Javascript
Vue中引入svg图标的两种方式
Jan 14 Vue.js
js表头排序实现方法
Jan 16 #Javascript
js计算任意值之间随机数的方法
Jan 16 #Javascript
jquery事件preventDefault()方法用法实例
Jan 16 #Javascript
jQuery老黄历完整实现方法
Jan 16 #Javascript
jquery中one()方法的用法实例
Jan 16 #Javascript
jquery中show()、hide()和toggle()用法实例
Jan 15 #Javascript
用js判断是否为360浏览器的实现代码
Jan 15 #Javascript
You might like
又一个php 分页类实现代码
2009/12/03 PHP
php实现mysql数据库操作类分享
2014/02/14 PHP
PHP数组和explode函数示例总结
2015/05/08 PHP
PHP实现UTF8二进制及明文字符串的转化功能示例
2017/11/20 PHP
PHP levenshtein()函数用法讲解
2019/03/08 PHP
使用jQuery插件创建常规模态窗口登陆效果
2013/08/23 Javascript
javascript实现在指定元素中垂直水平居中
2015/09/13 Javascript
javascript设计简单的秒表计时器
2020/09/05 Javascript
理解javascript中的MVC模式
2016/01/28 Javascript
Angular.js与Bootstrap相结合实现表格分页代码
2016/04/12 Javascript
使用BootStrap建立响应式网页——通栏轮播图(carousel)
2016/12/21 Javascript
canvas实现钟表效果
2017/02/13 Javascript
Javascript 详解封装from表单数据为json串进行ajax提交
2017/03/29 Javascript
Vue项目中使用WebUploader实现文件上传的方法
2019/07/21 Javascript
Vue父组件向子组件传值以及data和props的区别详解
2020/03/02 Javascript
vue二选一tab栏切换新做法实现
2021/01/19 Vue.js
Python 冒泡,选择,插入排序使用实例
2015/02/05 Python
利用ctypes提高Python的执行速度
2016/09/09 Python
Python 登录网站详解及实例
2017/04/11 Python
解决python2 绘图title,xlabel,ylabel出现中文乱码的问题
2019/01/29 Python
Python修改文件往指定行插入内容的实例
2019/01/30 Python
Python实现计算对象的内存大小示例
2019/07/10 Python
基于Python实现拆分和合并GIF动态图
2019/10/22 Python
python的Jenkins接口调用方式
2020/05/12 Python
Python新手学习标准库模块命名
2020/05/29 Python
Python drop方法删除列之inplace参数实例
2020/06/27 Python
详解python metaclass(元类)
2020/08/13 Python
python中round函数保留两位小数的方法
2020/12/04 Python
*p++ 自增p 还是p所指向的变量
2016/07/16 面试题
Java中各种基本数据类型的默认值都是什么
2016/12/22 面试题
预备党员思想汇报范文
2014/01/11 职场文书
普通党员个人对照检查材料
2014/09/18 职场文书
2015年个人实习工作总结
2014/12/12 职场文书
2014年体检中心工作总结
2014/12/23 职场文书
JavaScript实现贪吃蛇游戏
2021/06/16 Javascript
tomcat正常启动但网页却无法访问的几种解决方法
2022/05/06 Servers