js 实现图片无限横向滚动效果
门户网站好多都有产品无线滚动展现的效果:
测试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 实现图片无限横向滚动效果的更多相关文章
- 用js实现图片的无缝滚动效果
实现图片的无缝滚动就是要让你的图片集在一定时间里自动切换,那就需要js里的定时器来控制时间. js中关于定时器的方法有两种:setTimeout和setInterval.它们接收的参数是一样的,第一个 ...
- JS仿QQ空间鼠标停在长图片时候图片自动上下滚动效果
JS仿QQ空间鼠标停在长图片时候图片自动上下滚动效果 今天是2014年第一篇博客是关于类似于我们的qq空间长图片展示效果,因为一张很长的图片不可能全部把他展示出来,所以外层用了一个容器给他一个高度,超 ...
- jquery 单行滚动、批量多行滚动、文字图片翻屏滚动效果代码
jquery单行滚动.批量多行滚动.文字图片翻屏滚动效果代码,需要的朋友可以参考下. 以下代码,运行后,需要刷新下,才能加载jquery,要不然看不到效果.一.单行滚动效果 <!DOCTYPE ...
- unity 背景无限循环滚动效果
背景无限循环滚动效果如下示: 步骤如下: 导入背景图片后,设置图片的格式,如下图: 2.图片格式也可以设置是Texture格式,但是Wrap Mode 一定要是Repeat[重复发生]:然后记得App ...
- js 实现图片的无缝滚动
js 实现图片的无缝滚动 CreateTime--2018年3月7日17:18:34 Author:Marydon 测试成功 <!DOCTYPE html> <html> ...
- Vue开发组件之替代marquee标签,超出宽度文字横向滚动效果
一.npm 安装 如果你想安装插件(自己写的)安装 install dependencies npm i marquee-components 使用 在main.js引入 import marquee ...
- ASP.NET中使用JavaScript实现图片自动水平滚动效果
参照网上的资料,在ASP.NET中使用JavaScript实现图片自动水平滚动效果. 1.页面前台代码: <%@ Page Language="C#" AutoEventWi ...
- JQuery图片轮播滚动效果(网页效果--每日一更)
今天,带来的是一个图片的轮播滚动效果! 先来看一下效果展示:亲,请点击这里 原理很简单,设置一个定时器,使图片列表在每隔一段时间后滚动一次.而循环效果,就是在每一滚动的时候,将第一张图片放到最后一张的 ...
- 利用原生JS实现网页1920banner图滚动效果
内容描述:随着PC设备硬件性能的进步和分辨率的不断提高,现在主流网站逐渐开始采用1920banner图,为适应这一趋势,博主设计了1920banner图的滚动效果,代码利用了原生JS实现了1920ba ...
随机推荐
- ASP.NET MVC4 新手入门教程之四 ---4.添加一个模型
在本节中,您将添加一些类,用于管理数据库中的电影.这些类将 ASP.NET MVC 应用程序的"模型"部分. 您将使用一种称为实体框架的.NET 框架数据接入技术来定义和使用这些模 ...
- 三:Maven创建问题
1.httpServlet was not found 设置server为tomcat,jre设置为安装的jdk的jre java build path 添加server runtime为tomcat ...
- 互联网轻量级框架SSM-查缺补漏第二天
简言:第一天没咋看,因为看的时候已经是下午了.今天上午也因为工作上的事没咋看,本来想按照天去写的,但是内容会太散吧.我决定把整块的内容放在一起写了.天数啥的,就那样把. 还有,我只是言简意赅的去总结一 ...
- java 中国网建实现发送短信验证码
现在中国网建上注册一个自己的账户, 然后里面有代码案例,也有相应的下载jar包的地址 package com.direct.note; import java.io.IOException; impo ...
- axios拦截器请求头携带token
转—— https://github.com/superman66/vue-axios-github/blob/master/src/http.js
- Python学习系列----第四章 函数
4.1 函数定义 函数是python中重要的工具.函数用关键字 def 来定义.def 关键字后跟一个函数的标识符名称,然后跟一对圆括号.圆括号之中可以包括一些变量名,该行以冒号结尾.接下来是一块 ...
- 深入理解java的形参和实参
转载声明:本文转载自公众号「码匠笔记」. 前几天在头条上看到一道经典面试题,引发了一些思考.也是写这篇文章的导火索. 背景 请看题: public classMain{ publicsta ...
- lsqnonlin函数使用方法
非线性最小二乘函数 lsqnonlin 格式x = lsqnonlin(fun,x0) %x0 为初始解向量:fun为,i=1,2,-,m,fun返回向量值F,而不是平方和值,平方和隐含在方法中, ...
- Studying TCP's Throughput and Goodput using NS
Studying TCP's Throughput and Goodput using NS What is Throughput Throughput is the amount of data r ...
- How I explained OOD to my wife
Introduction My wife Farhana wants to resume her career as a software developer (she started her car ...