基于JavaScript实现新增内容滚动播放效果附完整代码


Posted in Javascript onAugust 24, 2017

先给大家展示下效果图:

基于JavaScript实现新增内容滚动播放效果附完整代码

完整demo如下

每两秒随机向上或者向下滚动,如果要替换新内容,则通过html()更新内容即可(查看注释代码)

<!DOCTYPE html>
<head>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <style>
    ul,li{
      list-style-type:none;
      border: solid;
    }
    ul{
      overflow: hidden;/*让li超出ul时隐藏*/
    }
    body{
      margin: 0px;
    }
  </style>
</head>
<body>
<div>
  <ul>
    <li>
      <img src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1503543418892&di=1f606f0990cf6fa893c8330457b5fde2&imgtype=0&src=http%3A%2F%2Fi3.hoopchina.com.cn%2Fblogfile%2F201509%2F16%2FBbsImg144240668814516_480*360.jpg"/>
    </li>
    <li><img src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1503543451619&di=a578daa6b6f794cb233f655cd5ecaf91&imgtype=0&src=http%3A%2F%2Fimg.qqzhi.com%2Fupload%2Fimg_0_3518803618D2241430362_23.jpg"/>
    </li>
    <li><img src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1503544550636&di=086d271111b428fadf9e23abb7c06b1e&imgtype=0&src=http%3A%2F%2Fuploads.yeyoujia.com%2Fcms%2Fimages%2F2017%2F02%2F10%2F589d8e4598d46285900450.png">
    </li>
  </ul>
</div>
<script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.js"></script>
<script>
  function getRandom(min, max){
    var r = Math.random() * (max - min);
    var re = Math.round(r + min);
    re = Math.max(Math.min(re, max), min)
    return re;
  }
  $(function(){
    setInterval(function(){
      if(getRandom(0,1)==0){
        //向上滚动特效
        var ul = $("ul");
        var $first = ul.find('li:first');
        var height = $first.height();
        $first.animate({
          marginTop: -height + 'px'
        }, 500, function() {
//          $first.css('marginTop', 0).html(new Date().getMinutes()+":"+new Date().getSeconds()).appendTo(ul);/*不要写成append*/
          $first.css('marginTop', 0).appendTo(ul);
        });
      }else{
        //向下滚
        var ul = $("ul");
        var liHeight = ul.find("li:last").height();//计算最后一个li元素的高度
        ul.animate({marginTop : liHeight +"px"},500,function(){
//          ul.find("li:last").html(new Date().getMinutes()+":"+new Date().getSeconds()).prependTo(ul);/*不要写成prepend*/
          ul.find("li:last").prependTo(ul);/*不要写成prepend*/
          ul.find("li:first").hide();
          ul.css({marginTop:0});
          ul.find("li:first").fadeIn(1000);
        });
      }
    },2000);
  });
</script>
</body>
</html>

效果

Javascript 相关文章推荐
js中对象的声明方式以及数组的一些用法示例
Dec 11 Javascript
JS中表单的使用小结
Jan 11 Javascript
解决Jquery鼠标经过不停滑动的问题
Mar 03 Javascript
一个不错的js html页面倒计时可精确到秒
Oct 22 Javascript
JavaScript中removeChild 方法开发示例代码
Aug 15 Javascript
手机端 HTML5使用photoswipe.js仿微信朋友圈图片放大效果
Aug 25 Javascript
jquery validate表单验证插件
Sep 06 Javascript
Vue2.0基于vue-cli+webpack同级组件之间的通信教程(推荐)
Sep 14 Javascript
vue中使用cookies和crypto-js实现记住密码和加密的方法
Oct 18 Javascript
100行代码实现一个vue分页组功能
Nov 06 Javascript
微信小程序自定义纯净模态框(弹出框)的实例代码
Mar 09 Javascript
Javascript ParentNode和ChildNode接口原理解析
Mar 16 Javascript
快速理解 JavaScript 中的 LHS 和 RHS 查询的用法
Aug 24 #Javascript
vue不通过路由直接获取url中参数的方法示例
Aug 24 #Javascript
VueJS 集成 Medium Editor的示例代码 (自定义编辑器按钮)
Aug 24 #Javascript
JS实现电商放大镜效果
Aug 24 #Javascript
weui框架实现上传、预览和删除图片功能代码
Aug 24 #Javascript
jQuery Datatable 多个查询条件自定义提交事件(推荐)
Aug 24 #jQuery
详解webpack2+node+react+babel实现热加载(hmr)
Aug 24 #Javascript
You might like
php 冒泡排序 交换排序法
2011/05/10 PHP
php基于websocket搭建简易聊天室实践
2016/10/24 PHP
php发送http请求的常用方法分析
2016/11/08 PHP
laravel实现上传图片,并且制作缩略图,按照日期存放的代码
2019/10/16 PHP
jquery ajax提交表单数据的两种方式
2009/11/24 Javascript
jQuery中调用WebService方法小结
2011/03/28 Javascript
JavaScript中setUTCMilliseconds()方法的使用详解
2015/06/12 Javascript
jQuery插件EasyUI校验规则 validatebox验证框
2015/11/29 Javascript
jQuery查看选中对象HTML代码的方法
2016/06/17 Javascript
老生常谈 关于JavaScript的类的继承
2016/06/24 Javascript
JSON对象 详解及实例代码
2016/10/18 Javascript
移动端如何用下拉刷新的方式实现上拉加载
2018/12/10 Javascript
JavaScript ES6常用基础知识总结
2019/02/09 Javascript
JQuery常见节点操作实例分析
2019/05/15 jQuery
微信小程序学习总结(二)样式、属性、模板操作分析
2020/06/04 Javascript
Vue记住滚动条和实现下拉加载的完美方法
2020/07/31 Javascript
python实现类似ftp传输文件的网络程序示例
2014/04/08 Python
Python中的闭包总结
2014/09/18 Python
Python编程实现二分法和牛顿迭代法求平方根代码
2017/12/04 Python
python搭建服务器实现两个Android客户端间收发消息
2018/04/12 Python
Python爬虫实现获取动态gif格式搞笑图片的方法示例
2018/12/24 Python
Pytorch中Tensor与各种图像格式的相互转化详解
2019/12/26 Python
python 抓取知乎指定回答下视频的方法
2020/07/09 Python
兰蔻英国官网:Lancome英国
2019/04/30 全球购物
师范生自我鉴定范文
2013/10/05 职场文书
爱情保证书范文
2014/02/01 职场文书
《雨霖铃》教学反思
2014/02/22 职场文书
大学社团计划书
2014/05/01 职场文书
机械制造专业大学生自我鉴定
2014/09/19 职场文书
复活读书笔记
2015/06/29 职场文书
钓鱼岛事件感想
2015/08/11 职场文书
志愿者服务宣传标语口号
2015/12/26 职场文书
阳光体育运动标语口号
2015/12/26 职场文书
送给小学生的暑假礼物!小学生必背99首古诗
2019/07/02 职场文书
Python中常见的反爬机制及其破解方法总结
2021/06/10 Python
教你使用Jenkins集成Harbor自动发布镜像
2022/04/03 Servers