javascript实现图片左右无缝滚动效果(附代码)
导读:
本文实例讲述了javascript实现的左右无缝滚动效果。即几张图片一起进行无缝滚动,这是一个常用的 js 效果。希望有用的朋友收藏起来。
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>
无缝滚动——左右
</title>
<link rel="stylesheet" type="text/css" href="../css/base.css" media="all"
/>
<style type="text/css">
#scroll{width:698px;height:108px;margin:50px auto 0;position:relative;overflow:hidden;}
.btn_left{display:block;width:68px;height:68px;background:url(images/btn.jpg)
no-repeat -70px -69px;position:absolute;top:20px;left:1px;z-index:1;} .btn_left:hover{background:url(images/btn.jpg)
no-repeat -70px 0;} .btn_right{display:block;width:68px;height:68px;background:url(images/btn.jpg)
no-repeat 1px -69px;position:absolute;top:20px;right:0;z-index:1;} .btn_right:hover{background:url(images/btn.jpg)
no-repeat 1px 0;} #scroll .content{width:546px;height:108px;position:relative;overflow:hidden;margin:0
auto;} #scroll ul{position:absolute;} #scroll li{float:left;width:182px;height:108px;text-align:center;}
#scroll li a:hover{position:relative;top:2px;}
</style>
</head>
<body>
<div id="scroll">
<a href="javascript:;" class="btn_left">
</a>
<a href="javascript:;" class="btn_right">
</a>
<div class="content">
<ul>
<li>
<a href="#">
<img src="images/1.jpg" width="178" height="108" alt="" />
</a>
</li>
<li>
<a href="#">
<img src="images/2.jpg" width="178" height="108" alt="" />
</a>
</li>
<li>
<a href="#">
<img src="images/3.jpg" width="178" height="108" alt="" />
</a>
</li>
<li>
<a href="#">
<img src="images/4.jpg" width="178" height="108" alt="" />
</a>
</li>
</ul>
</div>
</div>
</body>
</html>
<script type="text/javascript">
window.onload = function() {
var oDiv = document.getElementById('scroll');
var oUl = oDiv.getElementsByTagName('ul')[0];
var aLi = oDiv.getElementsByTagName('li');
var aBtn = oDiv.getElementsByTagName('a');
var speed = -1;
var timer = null;
oUl.innerHTML += oUl.innerHTML;
oUl.style.width = aLi[0].offsetWidth * aLi.length + 'px';
timer = setInterval(function() {
oUl.style.left = oUl.offsetLeft + speed + 'px';
if (oUl.offsetLeft < -oUl.offsetWidth / 2) {
oUl.style.left = '0';
} else if (oUl.offsetLeft > 0) {
oUl.style.left = -oUl.offsetWidth / 2 + 'px';
}
},
30);
aBtn[0].onclick = function() {
speed = -1;
};
aBtn[1].onclick = function() {
speed = 1;
};
oUl.onmouseover = function() {
clearInterval(timer);
};
oUl.onmouseout = function() {
timer = setInterval(function() {
oUl.style.left = oUl.offsetLeft + speed + 'px';
if (oUl.offsetLeft < -oUl.offsetWidth / 2) {
oUl.style.left = '0';
} else if (oUl.offsetLeft > 0) {
oUl.style.left = -oUl.offsetWidth / 2 + 'px';
}
},
30);
};
};
</script>
注释:如果想要改变移动速度,只需要改变 speed 的值。
相关推荐
记录一个合成图片插件html2canvas.js(JS前端开发)
本文记录一个前端开发中端常用的合成图片插件(html2canvas.js),在H5开发中,我们经常会遇上动态生成海报的需求,而在Web前端中,生成图片非Canvas莫属。html2canvas.js就…
2022-05-23 20:29:09 | 分类:JS | 作者:myerob | 阅读:969 | 标签:合成 图片 插件 html2canvas.js JS 前端 开发 | 收藏
PHP json_decode()报错 json_last_error()判断错误类型及解决方法
PHP json_decode()报错 json_last_error()判断错误类型 解决背景:最近在用curl请求接口获取json数据串的时候,一直出现PHP中json_decode()解析字符串…
2022-10-29 21:45:57 | 分类:PHP | 作者:myerob | 阅读:700 | 标签:PHP json_decode() 报错 json_last_error() 判断错误类型 解决方法 | 收藏
jQuery 滚动条插件nicescroll 使用方法、常见配置和事件回调使用说明
nicescroll是一款基于jQuery的滚动条插件,使用简单,功能强大,较mCustomScrollbar而言:资源文件少,只要一个jquery.nicescroll.min.js即可,无须css…
2022-12-05 22:16:17 | 分类:JS | 作者:myerob | 阅读:245 | 标签:jQuery nicescroll | 收藏
滚动条插件 NiceScroll 使用详解
有时为了保持页面风格的统一,我们需要修改滚动条的样式。虽然我们可以通过 CSS 设置滚动条各部分的颜色样式,但这种方式不支持老版本的浏览器。而且不同的浏览器下,CSS 滚动条属性的写法也不一样,如果各…
2022-12-05 22:23:19 | 分类:JS | 作者:myerob | 阅读:443 | 标签:滚动条插件 NiceScroll 使用详解 | 收藏
- 阅读榜
- 1. U.FL座 IPEX/IPX接头1代,2代,3代,4代,5代区分对照图
- 2. NTC热敏电阻B值3950(温度系数对照表)
- 3. 概率统计学中95%置信区间的系数1.96怎么得到的?
- 4. 什么情况下免征教育附加税,地方教育附加税?两附加费优惠政策
- 5. 个人所得税申报系统(扣缴端)如何删除已离职人员信息
- 6. CSS中设置height:100%无效的原因分析和解决方法
- 7. BCD码的定义以及其与十进制数据转换方法(附验证工具)
- 8. ASCII码一览表,ASCII码对照表
- 9. php页面最大执行时间 set_time_limit函数不起作用
- 10. 关于威尼斯目前账户显示注单未同步审核提不了现怎么解决?