原生javascript效果:无缝滚动
<style type="text/css">
#con {width:400px; padding:10px; margin:20px auto; text-align:center; border:1px solid #ccc;}
#con .roll {width:400px; height:100px; position:relative; overflow:hidden; margin-bottom:10px;}
#con ul {position:absolute;}
#con ul li {float:left; width:120px; height:100px; padding-left:10px;}
#con ul li a {display:block; width:120px; height:100px; background:#333; color:#fff;}
#con span {display:inline-block; *display:inline; *zoom:1; height:30px; line-height:30px; padding:0 10px; background:#ccc;}
</style>
js:
<script type="text/javascript">
window.onload=function () {
var oCon = document.getElementById('con');
var oUl = oCon.getElementsByTagName('ul')[0];
var aLi = oUl.getElementsByTagName('li');
var aSpan = oCon.getElementsByTagName('span');
var iSpeed = -2;
var timer; oUl.innerHTML += oUl.innerHTML;
oUl.style.width = aLi.length*aLi[0].offsetWidth+'px'; function goRoll() {
timer = setInterval(function() {
oUl.style.left = oUl.offsetLeft+iSpeed+'px';
if(oUl.offsetLeft<-oUl.offsetWidth/2) {
oUl.style.left = '0px';
} else if(oUl.offsetLeft>=0) {
oUl.style.left = -oUl.offsetWidth/2+'px';
}
}, 30);
} oUl.onmouseover = function() {clearInterval(timer);};
oUl.onmouseout = function() {goRoll();}; aSpan[0].onmouseover = function() {iSpeed = -2};
aSpan[1].onmouseover = function() {iSpeed = 2}; goRoll();
};
</script>
html:
<div id="con">
<div class="roll">
<ul>
<li><a href="javascript:;">mming<br />无缝滚动演示<br />001</a></li>
<li><a href="javascript:;">mming<br />无缝滚动演示<br />002</a></li>
<li><a href="javascript:;">mming<br />无缝滚动演示<br />003</a></li>
<li><a href="javascript:;">mming<br />无缝滚动演示<br />004</a></li>
</ul>
</div>
<span><< 向左</span>
<span>向右 >></span>
</div>
原生javascript效果:无缝滚动的更多相关文章
- marquee标签实现跑马灯效果--无缝滚动
今天在做微信端的大转盘抽奖时,想把所有用户的抽奖记录做成无缝滚动的效果,无奈我的js功底太差,一时想不出实现的方法,便百度各种相似效果.但无意中发现了一个html标签——<marquee> ...
- JavaScript实现无缝滚动 原理详细讲解
先了解一下对象的几个的属性: innerHTML: 设置或获取位于对象起始和结束标签内的 HTML scrollHeight: 获取对象的滚动高度. scrollLeft: 设置或获取位于对象左边界和 ...
- webbrowser内容滚动(javascript内容无缝滚动)
一 使用webbrowser现有方法 引用:https://blog.csdn.net/xiaokailele/article/details/48392673 public partial clas ...
- 利用JavaScript做无缝滚动
<html> <head> <meta charset="utf-8"> <title>无标题文档</title> &l ...
- js-小效果-无缝滚动
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...
- Javascript图片无缝滚动
http://www.cnblogs.com/shouce/p/5068787.html
- JS 实现无缝滚动动画原理(初学者入)
这段时间在教培训班的学生使用原生javascript实现无缝滚动的动画案例,做了这个原理演示的动画,分享给自学JS的朋友!博主希望对你们有帮助! 在讲解之前先看一下demo: demo:https:/ ...
- JS无缝滚动
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 31.0px Consolas; color: #2b7ec3 } p.p2 { margin: 0.0px ...
- JS——无缝滚动
1.描述——无缝滚动图片 2.代码 <!DOCTYPE html> <html> <head> <meta charset="UTF-8" ...
随机推荐
- posix thread内存可视性
线程间的内存可视性 当线程调用怕thread——create时, 它所能看到的内存值也是它建立的线程能够看到的.任何在调用怕thread_create之后写入的数据,可能不会被建立的线程看到,即使写操 ...
- 关于IO的一些数字
http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/en/us/people ...
- C# lazy加载
转自http://www.cnblogs.com/yunfeifei/p/3907726.html 在.NET4.0中,可以使用Lazy<T> 来实现对象的延迟初始化,从而优化系统的性能. ...
- Drbd 安装配置
一.Drbd介绍 Distributed Replicated Block Device(DRBD)是基于块设备在不同的高可用服务器之间同步和镜像数据的软件,通过它可以实现在网络中两台服务器这间基于块 ...
- ### CUDA
CUDA Learning. #@author: gr #@date: 2014-04-06 #@email: forgerui@gmail.com 1. Introduction CPU和GPU的区 ...
- Warning: Attempt to present * on * which is already presenting *
Warning: Attempt to present (要被presented的控制器) on (哪个控制器来presenting) which is already presenting (已经 ...
- GDI+中发生一般性错误(转载)
在开发.NET应用中,使用 System.Drawing.Image.Save 方法而导致“GDI+ 中发生一般性错误”的发生,通常有以下三种原因:1. 相应的帐户没有写权限.解决方法:赋予 NETW ...
- angular2 select change 事件
刚开始这是啥?(wrong!!! change事件会在 选择option行为 之前执行prodDirId,是取不到选择后正确的id值的,取得是选择行为前prodDirId的值(有试过setTi ...
- Windows和Linux下查看Apache、MySQL、PHP版本
# Windows查看Apache版本: 使用命令:httpd -v # Linux查看Apache版本: 使用命令:apachectl -v # Windows查看MySQL版本: 使用命令:mys ...
- libpcap 主要函数及过程详解
http://blog.chinaunix.net/uid-21556133-id-120228.html libpcap(Packet Capture Library),即数据包捕获函数库,是Uni ...