基于Jquery和Css3代码制作可以缩放的搜索框


Posted in HTML / CSS onNovember 19, 2015

搜索条在我们网站是必不可少的,尤其是在有限的页面空间里,放置一个重要的搜索条是个难题,今天我将结合实例给大家介绍一下如何使用CSS3和jQuery来实现一个可伸缩功能的搜索条。

HTML

在需要放置搜索条的页面中放置如下html代码,搜索条#search_bar包含一个form#myform表单,表单中放置一个搜索输入框#search,一个搜索按钮.search_btn以及搜索按钮图标.search_ico。

复制代码
代码如下:

<div id="search_bar" class="search_bar">
<form id="myform">
<input class="input" placeholder="想搜点什么呢..."
type="text" name="key" id="search">
<input class="search_btn" type="submit" value="">
<span class="search_ico"></span>
</form>
</div>

CSS

我们通过CSS来将整个搜索条布局美化,其中我们使用了CSS3代码。

复制代码
代码如下:

.search_bar{position: relative;margin-top: 10px;
width: 0%;min-width: 60px;height: 60px;
float: right;overflow: hidden;
-webkit-transition: width 0.3s;
-moz-transition: width 0.3s;
transition: width 0.3s;
-webkit-backface-visibility: hidden;
background:#162934;
}
.input{
position: absolute;top: 0;right: 0;
border: none;outline: none;
width: 98%;height: 60px; line-height:60px;z-index: 10;
font-size: 20px;color: #f9f9f9;background:transparent
}
.search_ico,.search_btn {
width: 60px;height: 60px;display: block;
position: absolute;right: 0;top: 0;
padding: 0;margin: 0;line-height: 60px;cursor: pointer;
}
.search_ico{background: #e67e22 url(icon.png) no-repeat 18px 20px;z-index:90;}
.search_open{width: 100% !important; z-index:1002}
#show{position:absolute; padding:20px}

上述代码中关键的是transition: width 0.3s可以实现CSS3的动画效果,width由0变成100%,具体大家可以去看下CSS3手册相关介绍,这里不多描述,你可以直接复制和修改代码应用到你的项目中去。

jQuery

当点击搜索按钮时,搜索条.search_bar通过toggleClass()切换样式.search_open,这就实现了搜索条收缩和伸展功能。另外我们还需要判断输入情况,当输入满足条件时,提交搜索表单实现搜索功能,请看代码:

复制代码
代码如下:

$(function(){
$(".search_ico").click(function(){
$(".search_bar").toggleClass('search_open');
var keys = $("#search").val();
if(keys.length>2){
$("#search").val('');
$("#myform").submit();
}else{
return false;
}
});
});

该效果可以运用到移动端项目中,当然你也可以添加手动滑动效果。

以上代码比较简单,希望对大家学习jquery css3有所帮助。更多信息请持续关注三水点靠木网站,我们每天都有新的内容更新。

HTML / CSS 相关文章推荐
CSS3伪类选择器:nth-child()
Apr 02 HTML / CSS
CSS3中box-shadow的用法介绍
Jul 15 HTML / CSS
10分钟理解CSS3 FlexBox弹性布局
Dec 20 HTML / CSS
详解HTML5通讯录获取指定多个人的信息
Dec 20 HTML / CSS
HTML5中FileReader接口使用方法实例详解
Aug 26 HTML / CSS
Html5游戏开发之乒乓Ping Pong游戏示例(三)
Jan 21 HTML / CSS
Web时代变迁及html5与html4的区别
Jan 06 HTML / CSS
HTML5通用接口详解
Jun 12 HTML / CSS
canvas 如何绘制线段的实现方法
Jul 12 HTML / CSS
html5视频媒体标签video的使用方法及完整参数说明详解
Sep 27 HTML / CSS
HTML5 图片悬停放大的实现代码示例
Dec 04 HTML / CSS
html5视频自动横过来自适应页面且点击播放功能的实现
Jun 03 HTML / CSS
基于CSS3实现图片模糊过滤效果
Nov 19 #HTML / CSS
Css3圆角边框制作代码
Nov 18 #HTML / CSS
CSS3绘制不规则图形的一些方法示例
Nov 07 #HTML / CSS
使用HTML和CSS3绘制基本卡通图案的示例分享
Nov 06 #HTML / CSS
使用CSS3的::selection改变选中文本颜色的方法
Sep 29 #HTML / CSS
CSS3绘制圆角矩形的简单示例
Sep 28 #HTML / CSS
CSS3的resize属性使用初探
Sep 27 #HTML / CSS
You might like
php.ini修改php上传文件大小限制的方法详解
2013/06/17 PHP
php反射应用示例
2014/02/25 PHP
thinkphp模板的包含与渲染实例分析
2014/11/26 PHP
php实现博客,论坛图片防盗链的方法
2016/10/15 PHP
PHP ob缓存以及ob函数原理实例解析
2020/11/13 PHP
Prototype使用指南之base.js
2007/01/10 Javascript
IE6与IE7中,innerHTML获取param的区别
2009/03/15 Javascript
setInterval,setTimeout与jquery混用的问题
2013/04/08 Javascript
原生javascript兼容性测试实例
2013/07/01 Javascript
JS实现Enter键跳转及控件获得焦点
2013/08/12 Javascript
transport.js和jquery冲突问题的解决方法
2015/02/10 Javascript
JavaScript中Number.MAX_VALUE属性的使用方法
2015/06/04 Javascript
jquery实现图片上传之前预览的方法
2015/07/11 Javascript
JavaScript简单下拉菜单实例代码
2015/09/07 Javascript
基于jQuery实现的扇形定时器附源码下载
2015/10/20 Javascript
jQuery调用Webservice传递json数组的方法
2016/08/06 Javascript
Angular 常用指令实例总结整理
2016/12/13 Javascript
利用Vue v-model实现一个自定义的表单组件
2017/04/27 Javascript
深入理解ES7的async/await的用法
2017/09/09 Javascript
Javacript中自定义的map.js  的方法
2017/11/26 Javascript
浅谈对于“不用setInterval,用setTimeout”的理解
2019/08/28 Javascript
JS 图片压缩原理与实现方法详解
2020/04/29 Javascript
通过js随机函数Math.random实现乱序
2020/05/19 Javascript
原生小程序封装跑马灯效果
2020/10/21 Javascript
Numpy中矩阵matrix读取一列的方法及数组和矩阵的相互转换实例
2018/07/02 Python
树莓派采用socket方式文件传输(python)
2019/06/22 Python
Python嵌套函数,作用域与偏函数用法实例分析
2019/12/26 Python
销售辞职报告范文
2014/01/12 职场文书
宗教学大学生职业生涯规划范文
2014/02/08 职场文书
乔布斯斯坦福大学演讲稿
2014/05/23 职场文书
学校交通安全责任书
2014/08/25 职场文书
2014年平安创建工作总结
2014/11/24 职场文书
特此通知格式
2015/04/27 职场文书
Python办公自动化之Excel(中)
2021/05/24 Python
python人工智能human learn绘图可创建机器学习模型
2021/11/23 Python
全网非常详细的pytest配置文件
2022/07/15 Python