这个版本可以控制左右滚动,鼠标点击对应的广告会自动滑动把广告完全展示出来。还实现了记录当前滚动的方向,当鼠标离开,接着继续滚动!!!

效果图:
代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<style type = "text/css">
*{margin: 0; padding: 0;}
li { list-style: none; }
.box {
width: 800px;
height: 450px;
margin: 50px auto;
overflow: hidden;
position: relative;
}
.box span {
width: 40px;
height: 60px;
display: block;
position: absolute;
top: 225px;
margin-top: -20px;
cursor: pointer;
z-index: 1;
}
.box #left {
background: url('http://cdn.attach.qdfuns.com/notes/pics/201701/14/042311cbd7gbjd7sggkd2b.png') no-repeat;
left: 0;
display: none;
}
.box #right {
background: url('http://cdn.attach.qdfuns.com/notes/pics/201701/14/042241w8z4hx4m4pjhyjzs.png') no-repeat;
right: 0;
display: none;
}
#ad {
width: 4000px;
height: 450px;
position: absolute;
}
#ad li {
float: left;
}
</style>
<script type = "text/javascript">
window.onload = function(){
var ad = document.getElementById("ad");
var lef = document.getElementById("left");
var rig = document.getElementById("right");
var timer = null; //管理定时器
var aspect = true;
function animate(obj,speed){
//关闭上一个定时器
clearInterval(obj.timer);
//管理定时器
obj.timer = setInterval(autoAd,30);
function autoAd(){
//判断左走或者右走
if(speed > 0){
aspect = true;
if(obj.offsetLeft >= 0){
obj.style.left = -3200 + 'px';
}
}else {
aspect = false;
if(obj.offsetLeft <= -3200){
obj.style.left = 0;
}
}
//匀速动画: 盒子当前的位置 + 步长
obj.style.left = obj.offsetLeft + speed +"px";
}
}
animate(ad,-5);
//鼠标划入显示控制按钮并关闭
ad.parentNode.onmouseover = function(){
clearInterval(ad.timer);
lef.style.display = "block";
rig.style.display = "block";
};
//鼠标离开隐藏控制按钮并启动定时器
ad.parentNode.onmouseout = function(){
clearInterval(ad.timer);
clearInterval(timer);
lef.style.display = "none";
rig.style.display = "none";
if(aspect){
animate(ad,5);
}else{
animate(ad,-5);
}
};
ad.onclick = function(event){
//关闭自动轮播定时器
clearInterval(ad.timer);
clearInterval(timer);
var event = event || window.event;
if(event.target){
var target = - parseInt(event.target.alt) * 800;
}else{
var target = - parseInt(event.srcElement.alt) * 800;
}
timer = setInterval(function(){
var step = (target - ad.offsetLeft) / 10;
step = step > 0 ? Math.ceil(step):Math.floor(step);
ad.style.left = ad.offsetLeft + step + "px";
if(ad.offsetLeft%800 == 0){
clearInterval(timer);
}
},20)
}
//右移动
lef.onclick = function(){
clearInterval(timer);
animate(ad,5);
};
//左移动
rig.onclick = function(){
clearInterval(timer);
animate(ad,-5);
};
}
</script>
</head>
<body>
<div class="box">
<ul id="ad">
<li><img src="http://cdn.attach.qdfuns.com/notes/pics/201701/14/042153lscsitwp7sszb6zs.jpg" alt="0"></li>
<li><img src="http://cdn.attach.qdfuns.com/notes/pics/201701/14/042152pfbkbfe8vbtvulfu.jpg" alt="1"></li>
<li><img src="http://cdn.attach.qdfuns.com/notes/pics/201701/14/042153u3jgn0ds43ndd3dz.jpg" alt="2"></li>
<li><img src="http://cdn.attach.qdfuns.com/notes/pics/201701/14/042152juuohne22z60hbsb.jpg" alt="3"></li>
<li><img src="http://cdn.attach.qdfuns.com/notes/pics/201701/14/042153lscsitwp7sszb6zs.jpg" alt="4"></li>
</ul>
<span id="left"></span>
<span id="right"></span>
</div>
</body>
</html>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# js
# 无缝滚动
# js实现无缝滚动
# js实现左右无缝滚动
# 彻底搞懂JS无缝滚动代码
# js 实现无缝滚动 兼容IE和FF
# div+css+js实现无缝滚动类似marquee无缝滚动兼容firefox
# jcarousellite.js 基于Jquery的图片无缝滚动插件
# js向上无缝滚动
# 网站公告效果 具体代码
# js实现图片无缝滚动特效
# 走马灯效果代码js appendChild实现的无缝滚动
# JS左右无缝滚动(一般方法+面向对象方法)
# Jquery与JS两种方法仿twitter/新浪微博 高度自适应无缝滚动实现代码
# js实现无缝滚动图
# 鼠标
# 鼠标点击
# 实现了
# 当鼠标
# span
# relative
# block
# absolute
# display
# height
# auto
# position
# hidden
# overflow
# cdn
# http
# url
# attach
# pics
# notes
相关文章:
c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗
七夕网站制作视频,七夕大促活动怎么报名?
广州网站建站公司选择指南:建站流程与SEO优化关键词解析
新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?
建站主机空间推荐 高性价比配置与快速部署方案解析
网站制作模板下载什么软件,ppt模板免费下载网站?
上海网站制作开发公司,上海买房比较好的网站有哪些?
盐城做公司网站,江苏电子版退休证办理流程?
网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?
教学网站制作软件,学习*后期制作的网站有哪些?
盘锦网站制作公司,盘锦大洼有多少5G网站?
XML的“混合内容”是什么 怎么用DTD或XSD定义
如何在云主机快速搭建网站站点?
如何快速生成ASP一键建站模板并优化安全性?
网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?
MySQL查询结果复制到新表的方法(更新、插入)
巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成
c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】
如何快速辨别茅台真假?关键步骤解析
C++中引用和指针有什么区别?(代码说明)
学校建站服务器如何选型才能满足性能需求?
高端建站如何打造兼具美学与转化的品牌官网?
如何快速上传自定义模板至建站之星?
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
如何高效完成独享虚拟主机建站?
陕西网站制作公司有哪些,陕西凌云电器有限公司官网?
我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?
如何在阿里云部署织梦网站?
网站专业制作公司有哪些,做一个公司网站要多少钱?
如何在Golang中使用encoding/gob序列化对象_存储和传输数据
音响网站制作视频教程,隆霸音响官方网站?
制作销售网站教学视频,销售网站有哪些?
再谈Python中的字符串与字符编码(推荐)
平台云上自主建站:模板化设计与智能工具打造高效网站
湖州网站制作公司有哪些,浙江中蓝新能源公司官网?
制作国外网站的软件,国外有哪些比较优质的网站推荐?
专业公司网站制作公司,用什么语言做企业网站比较好?
如何快速搭建高效简练网站?
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
如何快速搭建二级域名独立网站?
如何通过FTP服务器快速搭建网站?
建站上市公司网站建设方案与SEO优化服务定制指南
Python lxml的etree和ElementTree有什么区别
韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南
如何用wdcp快速搭建高效网站?
如何在Ubuntu系统下快速搭建WordPress个人网站?
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
建站之星如何一键生成手机站?
较简单的网站制作软件有哪些,手机版网页制作用什么软件?
*请认真填写需求信息,我们会在24小时内与您取得联系。