效果图:
代码如下:
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
*{margin:0; padding:0; list-style:none;}
ul{ overflow:hidden; width:630px; margin:100px auto;}
ul li{ float:left; position:relative; width:200px; height:200px; background:#ccc; margin:5px; overflow:hidden;}
ul li span{ position:absolute; width:100%; height:100%; background:rgba(255,0,0,0.3); left:-200px; top:0;}
</style>
<script>
function getStyle(obj,sName){
return (obj.currentStyle||getComputedStyle(obj,false))[sName];
}
function move(obj,json,options){
options = options||{};
options.duration = options.duration||700;
options.easing = options.easing||'ease-out';
var start = {};
var dis = {};
for(var name in json){
start[name] = parseFloat(getStyle(obj,name));
dis[name] = json[name]-start[name];
}
var count = Math.floor(options.duration/30);
var n = 0;
clearInterval(obj.timer);
obj.timer = setInterval(function(){
n++;
for(var name in json){
switch(options.easing){
case 'linear':
var cur = start[name]+dis[name]*n/count;
break;
case 'ease-in':
var a = n/count;
var cur = start[name]+dis[name]*Math.pow(a,3);
break;
case 'ease-out':
var a = 1-n/count;
var cur = start[name]+dis[name]*(1-Math.pow(a,3));
break;
}
if(name=='opacity'){
obj.style.opacity = cur;
obj.style.filter = 'alpha(opacity:'+cur*100+')';
}else{
obj.style[name] = cur+'px';
}
}
if(n==count){
clearInterval(obj.timer);
options.complete&&options.complete();
}
},30);
}
function a2d(n){
return n*180/Math.PI;
}
function hoverDir(ev,obj){
var a = ev.clientX-obj.offsetLeft-obj.offsetWidth/2;
var b = obj.offsetTop+obj.offsetHeight/2-ev.clientY;
return Math.round((a2d(Math.atan2(b,a))+180)/90)%4;
}
function through(obj){
var oS = obj.children[0];
obj.onmouseenter = function(ev){
var oEvent = ev||event;
var dir = hoverDir(oEvent,obj);
switch(dir){
case 0:
//左
oS.style.left = '-200px';
oS.style.top = 0;
break;
case 1:
//下
oS.style.left = 0;
oS.style.top = '200px';
break;
case 2:
//右
oS.style.left = '200px';
oS.style.top = 0;
break;
case 3:
//上
oS.style.left = 0;
oS.style.top = '-200px';
break;
}
move(oS,{left:0,top:0});
};
obj.onmouseleave = function(ev){
var oEvent = ev||event;
var dir = hoverDir(oEvent,obj);
switch(dir){
case 0:
move(oS,{left:-200,top:0});
break;
case 1:
move(oS,{left:0,top:200});
break;
case 2:
move(oS,{left:200,top:0});
break;
case 3:
move(oS,{left:0,top:-200});
break;
}
};
}
window.onload = function(){
var aLi = document.getElementsByTagName('li');
for(var i=0;i<aLi.length;i++){
through(aLi[i]);
}
};
</script>
</head>
<body>
<ul>
<li><span></span></li>
<li><span></span></li>
<li><span></span></li>
<li><span></span></li>
<li><span></span></li>
<li><span></span></li>
</ul>
</body>
</html>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# js
# 穿墙广告
# 广告效果
# js漂浮广告实现代码(合集经典) 符合W3C
# 又一个不错的js浮动广告代码
# JS实现悬浮移动窗口(悬浮广告)的特效
# 兼容多浏览器的JS 浮动广告[推荐]
# js 居中漂浮广告
# js退弹 IE关闭时弹出广告代码
# 可以防止屏蔽
# 用javascript实现的仿Flash广告图片轮换效果
# js网页侧边随页面滚动广告效果实现
# 兼容性非常好的js右下角与漂浮广告代码
# Js右下角视频广告代码(百度视窗)
# background
# height
# absolute
# span
# ccc
# relative
# li
# auto
# position
# left
# float
# rgba
# currentStyle
# return
# sName
# move
# false
# getComputedStyle
# obj
# top
相关文章:
制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
如何选择高效稳定的ISP建站解决方案?
如何基于云服务器快速搭建网站及云盘系统?
如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何在腾讯云服务器快速搭建个人网站?
如何挑选优质建站一级代理提升网站排名?
定制建站价位费用解析与套餐推荐全攻略
GML (Geography Markup Language)是什么,它如何用XML来表示地理空间信息?
已有域名和空间如何搭建网站?
专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?
seo网站制作优化,网站SEO优化步骤有哪些?
潍坊网站制作公司有哪些,潍坊哪家招聘网站好?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
网站代码制作软件有哪些,如何生成自己网站的代码?
电商网站制作公司有哪些,1688网是什么意思?
建站之星如何取消后台验证码生成?
如何正确选择百度移动适配建站域名?
微信小程序制作网站有哪些,微信小程序需要做网站吗?
开源网站制作软件,开源网站什么意思?
如何高效配置IIS服务器搭建网站?
如何配置IIS站点权限与局域网访问?
长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?
建站VPS配置与SEO优化指南:关键词排名提升策略
浅谈Javascript中的Label语句
,sp开头的版面叫什么?
网站建设设计制作营销公司南阳,如何策划设计和建设网站?
定制建站方案优化指南:企业官网开发与建站费用解析
如何高效配置香港服务器实现快速建站?
建站之星安装路径如何正确选择及配置?
高端企业智能建站程序:SEO优化与响应式模板定制开发
公司网站制作需要多少钱,找人做公司网站需要多少钱?
专业网站建设制作报价,网页设计制作要考什么证?
家庭建站与云服务器建站,如何选择更优?
如何快速完成中国万网建站详细流程?
如何快速生成专业多端适配建站电话?
Android自定义listview布局实现上拉加载下拉刷新功能
国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?
建站之星代理商如何保障技术支持与售后服务?
Swift中switch语句区间和元组模式匹配
建站主机是否等同于虚拟主机?
武清网站制作公司,天津武清个人营业执照注销查询系统网站?
网站制作培训多少钱一个月,网站优化seo培训课程有哪些?
,购物网站怎么盈利呢?
建站主机选择指南:服务器配置与SEO优化实战技巧
历史网站制作软件,华为如何找回被删除的网站?
沈阳个人网站制作公司,哪个网站能考到沈阳事业编招聘的信息?
香港服务器选型指南:免备案配置与高效建站方案解析
如何生成腾讯云建站专用兑换码?
建站主机数据库如何配置才能提升网站性能?
*请认真填写需求信息,我们会在24小时内与您取得联系。