js仿拉勾网首页穿墙广告效果
发布时间 - 2026-01-11 00:03:35 点击率:次效果图:
代码如下:
<!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
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
用v-html解决Vue.js渲染中html标签不被解析的问题
laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法
Windows10电脑怎么设置虚拟光驱_Win10右键装载ISO镜像文件
Laravel如何实现全文搜索功能?(Scout和Algolia示例)
使用spring连接及操作mongodb3.0实例
Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】
在线制作视频网站免费,都有哪些好的动漫网站?
Laravel怎么实现支付功能_Laravel集成支付宝微信支付
PHP 500报错的快速解决方法
关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)
PHP怎么接收前端传的文件路径_处理文件路径参数接收方法【汇总】
个人网站制作流程图片大全,个人网站如何注销?
高防服务器:AI智能防御DDoS攻击与数据安全保障
Laravel如何实现邮件验证激活账户_Laravel内置MustVerifyEmail接口配置【步骤】
Laravel中间件如何使用_Laravel自定义中间件实现权限控制
Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧
canvas 画布在主流浏览器中的尺寸限制详细介绍
html文件怎么打开证书错误_https协议的html打开提示不安全【指南】
小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?
网页设计与网站制作内容,怎样注册网站?
非常酷的网站设计制作软件,酷培ai教育官方网站?
Internet Explorer官网直接进入 IE浏览器在线体验版网址
Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程
Win11关机界面怎么改_Win11自定义关机画面设置【工具】
打造顶配客厅影院,这份100寸电视推荐名单请查收
简历没回改:利用AI润色让你的文字更专业
教你用AI润色文章,让你的文字表达更专业
如何在IIS服务器上快速部署高效网站?
Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】
Android滚轮选择时间控件使用详解
网页制作模板网站推荐,网页设计海报之类的素材哪里好?
Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】
如何在万网主机上快速搭建网站?
Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】
如何快速选择适合个人网站的云服务器配置?
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
百度浏览器如何管理插件 百度浏览器插件管理方法
Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
简单实现Android文件上传
iOS正则表达式验证手机号、邮箱、身份证号等
Linux系统命令中screen命令详解
如何快速上传自定义模板至建站之星?
网站制作报价单模板图片,小松挖机官方网站报价?
Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比
高性能网站服务器部署指南:稳定运行与安全配置优化方案
laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法
如何快速辨别茅台真假?关键步骤解析
Laravel如何升级到最新的版本_Laravel版本升级流程与兼容性处理
如何用花生壳三步快速搭建专属网站?

