基于jQuery实现中英文切换导航条效果


Posted in Javascript onSeptember 18, 2016

先来看一下中英文切换的导航条效果图:

基于jQuery实现中英文切换导航条效果

我采用了两种方式实现,一种用css3,另一种是用jquery实现。

首先说一下用css3如何实现:

html:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>首页</title>
 <link rel="stylesheet" href="../css/demo2.css">
</head>
<body>
 <div class="nav">
 <ul class="nav-list">
 <li>
 <a href="index.html">
 <b>index</b>
 <i>首页</i>
 </a>
 </li>
 <li>
 <a href="index.html">
 <b>bbs</b>
 <i>论坛</i>
 </a>
 </li>
 <li>
 <a href="index.html">
 <b>blog</b>
 <i>博客</i>
 </a>
 </li>
 <li>
 <a href="index.html">
 <b>mall</b>
 <i>商城</i>
 </a>
 </li>
 <li>
 <a href="index.html">
 <b>download</b>
 <i>下载</i>
 </a>
 </li>
 </ul>
 </div>
</body>
</html>

css:

*{
 margin:0px;
 padding:0px;
 font-family: "Microsoft Yahei", Helvetica, sans-serif, Lato;
}
li{
 list-style: none;
}
a{
 text-decoration: none;
}
.nav{
 width:100%;
 height: 40px;
 background-color: #222;
 margin-top:100px;
 overflow: hidden;
}
.nav-list{
 width:1000px;
 margin:0 auto;
 height: 40px;
}
.nav-list li {
 float: left;
}
.nav-list li a{
 display: block;
 transition: 0.2s;
}
.nav-list li b,.nav-list li i{
 color:#aaa;
 line-height: 40px;
 display: block;
 padding:0 30px;
 text-align: center;
}
.nav-list li b{
 font-weight:normal;
}
.nav-list li i{
 font-style: normal;
 color:#fff;
 background-color: #333;
}
.nav-list li a:hover{
 margin-top:-40px;
}

红色部分就是这个过程的实现,利用位置的变化,当鼠标移上去的时候,显示中文,也就是将英文移开,值得注意的是,需要利用overflow:hidden属性,将其隐藏。如果想要速度慢一点的话,可以利用transition属性设置变化时间,就可以减慢变化速度。

接着是用jquery实现:

css:

*{
 margin:0px;
 padding:0px;
 font-family: "Microsoft Yahei", Helvetica, sans-serif, Lato;
}
li{
 list-style: none;
}
a{
 text-decoration: none;
}
.nav{
 width:100%;
 height: 40px;
 background-color: #222;
 margin-top:100px;
 overflow: hidden;
}
.nav-list{
 width:1000px;
 margin:0 auto;
 height: 40px;
}
.nav-list li {
 float: left;
}
.nav-list li a{
 display: block;
}
.nav-list li b,.nav-list li i{
 color:#aaa;
 line-height: 40px;
 display: block;
 padding:0 30px;
 text-align: center;
}
.nav-list li b{
 font-weight:normal;
}
.nav-list li i{
 font-style: normal;
 color:#fff;
 background-color: #333;
}

jquery:

$(function(){
 $(".nav-list li a").hover(function(){
 $(this).stop().animate({"margin-top":-40},200)
 },function(){
 $(this).stop().animate({"margin-top":0},200)
 });
});

实现功能的重点是animate()函数的实现,通过设置margin-top和时间实现,为了防止快速经过时,所有的都会变化(如下图所示),需要在animate()函数前面加上stop()函数,即在所有动画之前,先停止其他的动画,然后再开始这个动画。

基于jQuery实现中英文切换导航条效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
几个高效,简洁的字符处理函数
Apr 12 Javascript
js中call与apply的用法小结
Dec 28 Javascript
node.js中的fs.symlink方法使用说明
Dec 15 Javascript
基于javascript实现精确到毫秒的倒计时限时抢购
Apr 17 Javascript
微信小程序 定义全局数据、函数复用、模版等详细介绍
Oct 27 Javascript
jquery easyui validatebox remote的使用详解
Nov 09 Javascript
js 动态生成html 触发事件传参字符转义的实例
Feb 14 Javascript
js异步编程小技巧详解
Aug 14 Javascript
基于vue监听滚动事件实现锚点链接平滑滚动的方法
Jan 17 Javascript
在vue中,v-for的索引index在html中的使用方法
Mar 06 Javascript
浅析前端路由简介以及vue-router实现原理
Jun 01 Javascript
如何解决vue2.0下IE浏览器白屏问题
Sep 13 Javascript
jQuery EasyUI常用数据验证汇总
Sep 18 #Javascript
jQuery EasyUI封装简化操作
Sep 18 #Javascript
基于jQuery ligerUI实现分页样式
Sep 18 #Javascript
深入浅析JS是按值传递还是按引用传递(推荐)
Sep 18 #Javascript
JQuery控制DIV的选取实现方法
Sep 18 #Javascript
chrome下判断点击input上标签还是其余标签的实现方法
Sep 18 #Javascript
通过jquery实现页面的动画效果(实例代码)
Sep 18 #Javascript
You might like
Apache服务器无法使用的解决方法
2013/05/08 PHP
关于Zend Studio 配色方案插件的介绍
2013/06/24 PHP
php二维数组排序详解
2013/11/06 PHP
JS动态添加option和删除option(附实例代码)
2013/04/01 Javascript
javascript 函数声明与函数表达式的区别介绍
2013/10/05 Javascript
JavaScript显示当然日期和时间即年月日星期和时间
2013/10/29 Javascript
js加载之使用DOM方法动态加载Javascript文件
2013/11/08 Javascript
减少访问DOM的次数提升javascript性能
2014/02/24 Javascript
js函数模拟显示桌面.scf程序示例
2014/04/20 Javascript
精通JavaScript的this关键字
2020/05/28 Javascript
jQuery插件HighCharts绘制2D带有Legend的饼图效果示例【附demo源码下载】
2017/03/10 Javascript
vue.js 1.x与2.0中js实时监听input值的变化
2017/03/15 Javascript
JS字符串按逗号和回车分隔的方法
2017/04/25 Javascript
利用types增强vscode中js代码提示功能详解
2017/07/07 Javascript
AngularJs每天学习之总体介绍
2017/08/07 Javascript
浅谈Angular文字折叠展开组件的原理分析
2017/11/24 Javascript
浅谈关于JS下大批量异步任务按顺序执行解决方案一点思考
2019/01/08 Javascript
基于layui table返回的值的多级嵌套的解决方法
2019/09/19 Javascript
小程序表单认证布局及验证详解
2020/06/19 Javascript
利用Python对文件夹下图片数据进行批量改名的代码实例
2019/02/21 Python
python列表返回重复数据的下标
2020/02/10 Python
Python如何创建装饰器时保留函数元信息
2020/08/07 Python
python Matplotlib数据可视化(1):简单入门
2020/09/30 Python
Python reversed反转序列并生成可迭代对象
2020/10/22 Python
css3背景_动力节点Java学院整理
2017/07/11 HTML / CSS
Camper鞋西班牙官方网上商店:西班牙马略卡岛的鞋类品牌
2019/03/14 全球购物
入党综合考察材料
2014/06/02 职场文书
企业精神口号
2014/06/11 职场文书
在教室放鞭炮的检讨书
2014/09/28 职场文书
2015年毕业生个人自荐书
2015/03/24 职场文书
工厂门卫岗位职责
2015/04/13 职场文书
社区艾滋病宣传活动总结
2015/05/07 职场文书
大学生受助感言
2015/08/01 职场文书
企业文化学习心得体会
2016/01/21 职场文书
手把手教你怎么用Python实现zip文件密码的破解
2021/05/27 Python
HTML基础详解(上)
2021/10/16 HTML / CSS