一、效果图

二、使用CSS实现

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>图片无缝滚动</title>
<style type="text/css">
*{
margin: 0px;
padding: 0px;
} #con{
width: 800px;
margin: auto;
margin-top: 100px;
/* 超出div的部分隐藏 */
overflow: hidden;
height: 158px;
} li{
list-style: none;
float: left; } img{
width: 240px;
height: 150px;
margin: 5px;
border-radius: 5px;
} ul{
width: 2500px;
} /* 动画播放状态 */
ul:hover{
cursor: pointer;
/* 当鼠标移动到图片上时动画停止 */
animation-play-state:paused;
} /* 实现动画 */
#ul{
/* 动画名称 ,在定义关键帧动画时需要使用*/
animation-name: moveleft; /* 动画持续时间 */
animation-duration: 10s; /* 设置动画速度曲线:线性 */
animation-timing-function: linear; /* 动画的播放次数:无限次 */
animation-iteration-count: infinite; /* 动画的奇偶轮流播放:奇数次正向播放,偶数次反向播放 */
/* animation-direction: alternate; */ } /* 定义关键帧动画 */
@keyframes moveleft{
/* ul从左边0位置到左边-1250px位置 */
from{
margin-left: 0px;
}
to{
margin-left: -1250px;
}
} </style>
</head>
<body>
<div id="con">
<ul id="ul">
<li><img src="../img/21.jpg" ></li>
<li><img src="../img/22.jpg" ></li>
<li><img src="../img/23.jpg" ></li>
<li><img src="../img/24.jpg" ></li>
<li><img src="../img/25.jpg" ></li> <li><img src="../img/21.jpg" ></li>
<li><img src="../img/22.jpg" ></li>
<li><img src="../img/23.jpg" ></li>
<li><img src="../img/24.jpg" ></li>
<li><img src="../img/25.jpg" ></li>
</ul>
</div>
</body>
</html>

三、使用jQuery实现

HTML和css代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>图片无缝滚动</title>
<script src="../js/jquery-3.4.1.js" type="text/javascript" charset="utf-8"></script>
<script src="../js/图片无缝滚动.js" type="text/javascript" charset="utf-8"></script>
<style type="text/css">
*{
margin: 0px;
padding: 0px;
}
#con{
width: 800px;
margin: auto;
margin-top: 100px;
overflow: hidden;
height: 158px;
}
li{
list-style: none;
float: left; }
img{
width: 240px;
height: 150px;
margin: 5px;
border-radius: 5px;
}
ul{
width: 2500px;
cursor: pointer;
} </style>
</head>
<body>
<div id="con">
<ul id="ul">
<li><img src="../img/21.jpg" ></li>
<li><img src="../img/22.jpg" ></li>
<li><img src="../img/23.jpg" ></li>
<li><img src="../img/24.jpg" ></li>
<li><img src="../img/25.jpg" ></li>
<li><img src="../img/10.jpg" ></li> <li><img src="../img/21.jpg" ></li>
<li><img src="../img/22.jpg" ></li>
<li><img src="../img/23.jpg" ></li>
<li><img src="../img/24.jpg" ></li>
<!-- <li><img src="../img/25.jpg" ></li> -->
</ul>
</div>
</body>
</html>

js代码:

var move;
var lv = 0;
$(function() { //第一种方法
//move = setInterval("moveLeft()", 5); //第二种方法
move(); }); //方法一
function moveLeft() {
var ul = $("ul");
var li = $("li");
lv += 1;
//获取ul的左边距
if (lv > 1500) {
lv = 0;
}
$("ul").css("margin-left", -lv + "px"); ul.mouseover(function(){
$("ul").css({"animationPlayState":"paused"});
}) } //方法二
function move(){ //鼠标移入移出事件
$("ul").mouseover(function(){
$(this).stop(true);
}); $("ul").mouseout(function(){
move();
}); //获取ul绑定动画往左移动
$("ul").animate({marginLeft:-1500},3000);
$("ul").animate({marginLeft:0},0,move); }

CSS和jQuery分别实现图片无缝滚动效果的更多相关文章

  1. 应用JavaScript搭建一个简易页面图片无缝滚动效果

    页面图片无缝滚动JavaScript原理:移动的区块包含图片内容,区块相对父级元素进行定位脱离文档流.再令区块的left值每隔固定的时间进行等量减少(或增大)从而实现区块的匀速运动.由于每次间隔移动的 ...

  2. jQuery图片无缝滚动JS代码ul/li结构

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. jQuery图片无缝滚动

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. jquery图片无缝滚动代码左右 上下无缝滚动图片

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. JavaScript学习笔记5 之 计时器 & scroll、offset、client系列属性 & 图片无缝滚动

    一.计时器 setInterval ( 函数/名称 , 毫秒数 )表示每经过一定的毫秒后,执行一次相应的函数(重复) setTimeout ( 函数/名称 , 毫秒数 ) 表示经过一定的毫秒后,只执行 ...

  6. javascript实现图片无缝滚动(scrollLeft的使用方法介绍)

    <!DOCTYPE html > <html> <head> <meta http-equiv="Content-Type" conten ...

  7. liMarquee演示12种不同的无缝滚动效果

    很实用的一款liMarquee演示12种不同的无缝滚动效果 在线预览 下载地址 实例代码 <!DOCTYPE html> <html lang="zh-CN"&g ...

  8. js实现简单易用的上下无缝滚动效果

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  9. 信息无缝滚动效果marquee

    横向滚动.纵向滚动 1. 解决滚动的空白 向左向右滚动的话,可以根据父级定位left,每次加或者减可以使物体向左或右运动,用top也可以实现向上或向下运动 上下滚动实现无缝滚动1. innerHTML ...

随机推荐

  1. SpringMVC学习(10):异常处理

    在项目中如何处理出现的异常,在每个可能出现异常的地方都写代码捕捉异常?这显然是不合理的,当项目越来越大是也是不可维护的.那么如何保证我们处理异常的代码精简且便于维护呢?这就是本篇要讲的内容->异 ...

  2. Centos7 部署ftp

    1.查看是否已经安装 vsftpd -version 2.安装vsftpd yum install -y vsftpd 3.新建FTP目录 mkdir /data/KodServer/data/Use ...

  3. 安装双系统Windows+Centos安装完成之后提示双系统选项菜单!

    原因:在windows下安装centos系统完成之后重启无法显示windows系统菜单选项 1.安装Windows系统 2.安装Centos系统 3.在Centos系统中安装ntfs-3g yum i ...

  4. HWDB手写汉字识别 - CNN

    MARK Caffe 的 googleNet近似模型,识别HWDB汉字200类 准确率96.3

  5. 转帖 java使用poi.3.10读取excel 2010

    package poi; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; ...

  6. egg 的学习

    1.初始化项目 快速生成项目: $ npm i egg-init -g $ egg-init egg-example --type=simple $ cd egg-example $ npm i 启动 ...

  7. 数据结构---Java---HashMap---JDK1.7

    源码解读 public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Clone ...

  8. ArrayList详解,底层是数组,实现Serializable接口

    一.对于ArrayList需要掌握的七点内容 ArrayList的创建:即构造器往ArrayList中添加对象:即add(E)方法获取ArrayList中的单个对象:即get(int index)方法 ...

  9. 【leetcode】395. Longest Substring with At Least K Repeating Characters

    题目如下: 解题思路:题目要找出一段连续的子串内所有字符出现的次数必须要大于k,因此出现次数小于k的字符就一定不能出现,所以就可以以这些字符作为分隔符分割成多个子串,然后继续对子串递归,找出符合条件的 ...

  10. setTimeout()和setInterval()的用法及区别

    setInterval 方法表示每间隔一段时间执行一次函数,会一直执行下去,除非手动 clearInterval 来停止. var i = 10; var timer = setInterval(() ...