门户网站好多都有产品无线滚动展现的效果:

测试demo1 -- 非无缝滚动(可以看出来从头开始的效果):

css样式如下:

.box{
width: 1000px;
border: 1px solid #ccc;
overflow: hidden;
height: 110px;
margin: 50px auto;
white-space: nowrap;
position: relative;
}
.con1{
width: 1000px;
height: 110px;
overflow: hidden;
position: absolute;
left:;
}
.con2{
position: absolute;
overflow: hidden;
opacity:;
}

html代码如下:

<div class="box">
<div class="con1">
<li><img src="img/SD_1.jpg" alt=""></li>
<li><img src="img/SD_2.jpg" alt=""></li>
<li><img src="img/SD_3.jpg" alt=""></li>
<li><img src="img/SD_4.jpg" alt=""></li>
<li><img src="img/SD_5.jpg" alt=""></li>
<li><img src="img/SD_6.jpg" alt=""></li>
</div>
<div class="con2"></div>
</div>

js代码如下:

window.onload = function(){
var cont = 5; //时间间隔
var box = document.getElementsByClassName("box")[0];
var con1 = document.getElementsByClassName("con1")[0];
var con2 = document.getElementsByClassName("con2")[0];
con2.innerHTML = con1.innerHTML;
function scroll(){
if(con1.scrollLeft >= con2.offsetWidth - box.offsetWidth){  //利用滚动差当滚动不动时重置为0
con1.scrollLeft = 0;
}else{
con1.scrollLeft += 1;
}
}
var timer = setInterval(scroll,cont);
box.onmouseover = function(e){
clearInterval(timer);
}
box.onmouseout = function(e){
timer = setInterval(scroll,cont);
}
}

2.测试demo2 -- 无缝滚动效果,看不出来重0效果:

css代码如下:

.box{
width: 1000px;
border: 1px solid #ccc;
overflow: hidden;
height: 110px;
margin: 50px auto;
white-space: nowrap;
position: relative;
}
.con1,.con2{
display: inline;
}

html结构同上;

js代码如下:

window.onload = function(){
var cont = 5;
var box = document.getElementsByClassName("box")[0];
var con1 = document.getElementsByClassName("con1")[0];
var con2 = document.getElementsByClassName("con2")[0];
con2.innerHTML = con1.innerHTML;
function scroll(){
if(con2.offsetWidth - box.scrollLeft <= 0){
// box.scrollLeft = 0; //重置为0 (这两项都行,不太明白???)
// box.scrollLeft -= con1.offsetWidth; //此值非0 一般情况为负值 (效果和重置为0一样)
}else{
box.scrollLeft += 1;
}
}
var timer = setInterval(scroll,cont);
box.onmouseover = function(e){
clearInterval(timer);
}
box.onmouseout = function(e){
timer = setInterval(scroll,cont);
}
}

js 实现图片无限横向滚动效果的更多相关文章

  1. 用js实现图片的无缝滚动效果

    实现图片的无缝滚动就是要让你的图片集在一定时间里自动切换,那就需要js里的定时器来控制时间. js中关于定时器的方法有两种:setTimeout和setInterval.它们接收的参数是一样的,第一个 ...

  2. JS仿QQ空间鼠标停在长图片时候图片自动上下滚动效果

    JS仿QQ空间鼠标停在长图片时候图片自动上下滚动效果 今天是2014年第一篇博客是关于类似于我们的qq空间长图片展示效果,因为一张很长的图片不可能全部把他展示出来,所以外层用了一个容器给他一个高度,超 ...

  3. jquery 单行滚动、批量多行滚动、文字图片翻屏滚动效果代码

    jquery单行滚动.批量多行滚动.文字图片翻屏滚动效果代码,需要的朋友可以参考下. 以下代码,运行后,需要刷新下,才能加载jquery,要不然看不到效果.一.单行滚动效果 <!DOCTYPE ...

  4. unity 背景无限循环滚动效果

    背景无限循环滚动效果如下示: 步骤如下: 导入背景图片后,设置图片的格式,如下图: 2.图片格式也可以设置是Texture格式,但是Wrap Mode 一定要是Repeat[重复发生]:然后记得App ...

  5. js 实现图片的无缝滚动

      js 实现图片的无缝滚动 CreateTime--2018年3月7日17:18:34 Author:Marydon 测试成功 <!DOCTYPE html> <html> ...

  6. Vue开发组件之替代marquee标签,超出宽度文字横向滚动效果

    一.npm 安装 如果你想安装插件(自己写的)安装 install dependencies npm i marquee-components 使用 在main.js引入 import marquee ...

  7. ASP.NET中使用JavaScript实现图片自动水平滚动效果

    参照网上的资料,在ASP.NET中使用JavaScript实现图片自动水平滚动效果. 1.页面前台代码: <%@ Page Language="C#" AutoEventWi ...

  8. JQuery图片轮播滚动效果(网页效果--每日一更)

    今天,带来的是一个图片的轮播滚动效果! 先来看一下效果展示:亲,请点击这里 原理很简单,设置一个定时器,使图片列表在每隔一段时间后滚动一次.而循环效果,就是在每一滚动的时候,将第一张图片放到最后一张的 ...

  9. 利用原生JS实现网页1920banner图滚动效果

    内容描述:随着PC设备硬件性能的进步和分辨率的不断提高,现在主流网站逐渐开始采用1920banner图,为适应这一趋势,博主设计了1920banner图的滚动效果,代码利用了原生JS实现了1920ba ...

随机推荐

  1. Rabbit的直连交换机direct

    直连交换机类型为:direct.加入了路由键routingKey的概念. 就是说 生产者投递消息给指定交换机的指定路由键. 只有绑定了此交换机指定路由键的消息队列才可以收到消息. 生产者: packa ...

  2. 2048小游戏4X4C语言

    */ #include<stdio.h> #include<stdlib.h> #include<conio.h> #include<time.h> v ...

  3. Tomcat添加用户

    在conf目录下tomcat-users.xml文件里添加如下代码: <role rolename="manager-gui"/> <user username= ...

  4. git版本控制的使用

    特别说明:本文所有知识笔记是学习“表严肃”同学的git课程记录所得. 前辈个人网站地址:http://biaoyansu.com 特此感谢前辈! 一.git是版本控制利器 二.本地创建仓库 1.进入新 ...

  5. BZOJ2763: [JLOI2011]飞行路线(分层图 最短路)

    题意 题目链接 Sol 分层图+最短路 建\(k+1\)层图,对于边\((u, v, w)\),首先在本层内连边权为\(w\)的无向边,再各向下一层对应的节点连边权为\(0\)的有向边 如果是取最大最 ...

  6. Linux基础之-正则表达式(grep,sed,awk)

    一. 正则表达式 正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式是对字符串操作的一种逻辑公 ...

  7. restful知识点之二restframework视图

    restful协议理解:面向资源开发 restful协议 ---- 一切皆是资源,操作只是请求方式 ----book表增删改查 /books/ books /books/add/ addbook /b ...

  8. Session、Cookie详解(2)

    session是web开发里一个重要的概念,在大多数web应用里session都是被当做现成的东西,拿来就直接用,但是一些复杂的web应用里能拿来用的session已经满足不了实际的需求,当碰到这样的 ...

  9. angular中的scope

    angular.element($0).scope() 什么是scope? scope是一个refer to the application model的object.它是一个expression的执 ...

  10. c#编程指南(五) 扩展方法(Extension Method)

    C# 3.0就引入的新特性,扩展方法可以很大的增加你代码的优美度,扩展方法提供你扩展.NET Framewoke类的扩展途径,书写和规则也简单的要命. 编写扩展方法有下面几个要求: 第一:扩展方法所在 ...