js实现 导航移入移出效果
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>nav-head</title>
<style>
*{
margin:0;
padding:0;
}
.head-nav{
width:1200px;
margin:0 auto;
background:#373D41;
}
.head-nav ul{
list-style:none;
font-size:0px;
position:relative;
}
.head-nav li{
line-height:70px;
padding:0 12px;
display:inline-block;
}
.head-nav li a{
color:#fff;
font-size:16px;
text-decoration:none;
display:block;
cursor:pointer;
}
.head-nav li a:hover{
color:#ccc;
}
.head-nav li.line{
position:absolute;
width:0px;
height:2px;
background:#ccc;
left:12px;
bottom:10px;
padding:0;
}
</style>
</head>
<body>
<div class="head-nav">
<ul>
<li><a href="#">最新活动</a></li>
<li><a href="#">产品</a></li>
<li><a href="#">产品水电费</a></li>
<li><a href="#">产品水电</a></li>
<li><a href="#">产品</a></li>
<li class="line"></li>
</ul>
</div>
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.min.js"></script>
<script>
// 原生实现方式 使用了jQuery animate函数方式实现
(function($,win){
//获取当前元素的偏移量
function getElementLeft(element){
var el = typeof(element) === "string" ? document.getElementById(element) : element;
return el.offsetLeft;
}
var li = document.getElementsByTagName("li");
var line = document.getElementsByClassName("line");
for(var i=0; i<li.length; i++){
(function(i){
li[i].addEventListener("mouseenter",function(){
var offsetLeft = getElementLeft(this);
$(line[0]).stop().animate({
left:offsetLeft+"px",
width:li[i].offsetWidth + "px"
},50)
// line[0].style.left = offsetLeft+"px";
// line[0].style.width = li[i].offsetWidth + "px";
});
li[i].addEventListener("mouseleave",function(){
var offsetLeft = getElementLeft(this);
$(line[0]).stop().animate({
left:offsetLeft+"px",
width:"0px"
},280)
// line[0].style.left = offsetLeft+"px";
// line[0].style.width = "0px";
});
}(i))
}
})(jQuery,window)
</script>
</body>
</html>
js实现 导航移入移出效果的更多相关文章
- js鼠标移入移出效果【原】
<HTML> <HEAD> <!-- meta 解释 : http://www.haorooms.com/post/html_meta_ds --> <met ...
- js(jquery)鼠标移入移出事件时,出现闪烁、隐藏显示隐藏显示不停切换的情况
<script> $(".guanzhu").hover(function(){ $(".weixinTop").show(); },functio ...
- CSS3的过渡效果,使用transition实现鼠标移入/移出效果
在css中使用伪类虽然实现了样式的改变,但由于没有过渡效果会显得很生硬.以前如果要实现过渡,就需要借助第三方的js框架来实现.现在只需要使用CSS3的过渡(transition)功能,就可以从一组样式 ...
- JS实现鼠标移入水波效果
前言 最近比较沉迷JS,所以我现在来做个鼠标的交互效果 HTML <div style="border-radius;position:relative;width:800px;hei ...
- antd card 组件实现鼠标移入移出效果
鼠标移出: 鼠标移入: import React, { Component } from 'react' import { Card, Icon, Avatar } from 'antd'; cons ...
- Javascript和jquery事件-鼠标移入移出事件
javascript使用mouseover和mouseout,只在css中支持hover jquery支持mouseover和mouseout,封装了mouseenter.mouseleave事件函数 ...
- html中如何实现表格移入移出时背景颜色改变?(两种方法)
html中如何实现表格移入移出时背景颜色改变?(两种方法) 一.总结 1.通过css的table标签的hover属性: 10 #tab:hover{ 11 background: green 12 } ...
- # li鼠标移入移出,点击,变背景色,变checkbox选中状态
移入移出背景色改变和点击背景色改变,两者是否相互覆盖? 若移出背景色恢复,影响点击事件的背景色改变,会产生效果为: 点击时,背景色改变,并且checkbox选中 鼠标移开后,checkbox仍选中,但 ...
- element ui aside — 侧栏导航菜单移入移出折叠效果
效果如图,移入移出控制折叠,点击按钮后移入移出不可控制折叠. 功能是很简单的功能,不过昨天这块还是弄了小一个小时,所以记录下来. 发现的问题: 模版上el-aside写上@mouseenter无效 解 ...
随机推荐
- Python dataframe中如何使y列按x列进行统计?
如图:busy=0 or 1,求出busy=1时los的平均,同样对busy=0时也求出los的平均 Python dataframe中如何使y列按x列进行统计? >> python这个答 ...
- 自动关闭Messbox
/// <summary> /// 自动关闭Messbox /// </summary> public class MessageBoxAutoClose { System.T ...
- AIX系统谨慎使用reboot命令
在客户一次停机维护中,发现了这个问题. 环境是ORACLE 10G RAC for AIX6,使用了HACMP管理共享磁盘. 在停机维护时间段内需要重启主机,当关闭了数据库和CLUSTER后,节点1使 ...
- 企业级Nginx+Keepalived集群实战(双主架构)
随着Nginx在国内的发展潮流,越来越多的互联网公司都在使用Nginx,Nginx高性能.稳定性成为IT人士青睐的HTTP和反向代理服务器.Nginx负载均衡一般位于整个网站架构的最前端或者中间层,如 ...
- [CQOI2013]新Nim游戏(线性基)
P4301 [CQOI2013]新Nim游戏 题目描述 传统的Nim游戏是这样的:有一些火柴堆,每堆都有若干根火柴(不同堆的火柴数量可以不同).两个游戏者轮流操作,每次可以选一个火柴堆拿走若干根火柴. ...
- 【转】30分钟掌握 C#6
[转]30分钟掌握 C#6 1. 只读自动属性(Read-only auto-properties) C# 6之前我们构建只读自动属性: public string FirstName { get; ...
- IPMI远程管理一点记录
http://www.07net01.com/storage_networking/IPMIyuanchengguanliyidianjilu_53093_1357975254.html
- android ViewPager实现 跑马灯切换图片+多种切换动画
近期在弄个项目.要求有跑马灯效果的图片展示. 网上搜了一堆,都没有完美实现的算了还是自己写吧! 实现原理利用 ViewPager 控件,这个控件本身就支持滑动翻页非常好非常强大好多功能都能用上它.利用 ...
- 2015北京网络赛 Couple Trees 倍增算法
2015北京网络赛 Couple Trees 题意:两棵树,求不同树上两个节点的最近公共祖先 思路:比赛时看过的队伍不是很多,没有仔细想.今天补题才发现有个 倍增算法,自己竟然不知道. 解法来自 q ...
- Linux 服务器下多网卡的负载均衡
Linux 服务器下多网卡负载均衡的实现 一.引言 现今几乎各行各业内部都建立了自己的服务器,由于服务器的特殊地位,它的可靠性.可用性及其 I/O 速度就显得非常的重要, 保持服务器的高可用 ...