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 】
相关推荐:
Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】
php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】
ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法
百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭
如何用花生壳三步快速搭建专属网站?
js实现点击每个li节点,都弹出其文本值及修改
历史网站制作软件,华为如何找回被删除的网站?
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
如何确认建站备案号应放置的具体位置?
如何基于云服务器快速搭建个人网站?
Laravel如何使用.env文件管理环境变量?(最佳实践)
如何在Tomcat中配置并部署网站项目?
Laravel怎么判断请求类型_Laravel Request isMethod用法
如何安全更换建站之星模板并保留数据?
Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程
jQuery validate插件功能与用法详解
免费视频制作网站,更新又快又好的免费电影网站?
,南京靠谱的征婚网站?
动图在线制作网站有哪些,滑动动图图集怎么做?
*服务器网站为何频现安全漏洞?
深圳网站制作培训,深圳哪些招聘网站比较好?
Android Socket接口实现即时通讯实例代码
Javascript中的事件循环是如何工作的_如何利用Javascript事件循环优化异步代码?
PHP 500报错的快速解决方法
如何快速搭建高效WAP手机网站吸引移动用户?
Android实现代码画虚线边框背景效果
JS实现鼠标移上去显示图片或微信二维码
非常酷的网站设计制作软件,酷培ai教育官方网站?
千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】
如何用西部建站助手快速创建专业网站?
如何在 Pandas 中基于一列条件计算另一列的分组均值
jQuery 常见小例汇总
Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制
Python自然语言搜索引擎项目教程_倒排索引查询优化案例
在centOS 7安装mysql 5.7的详细教程
企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?
python中快速进行多个字符替换的方法小结
长沙企业网站制作哪家好,长沙水业集团官方网站?
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
Laravel怎么实现支付功能_Laravel集成支付宝微信支付
Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】
网站建设要注意的标准 促进网站用户好感度!
Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】
如何基于云服务器快速搭建网站及云盘系统?
Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南
Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区
Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程
利用vue写todolist单页应用
详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)
EditPlus 正则表达式 实战(3)

