JS实现的新浪微博大厅文字内容滚动效果代码


Posted in Javascript onNovember 05, 2015

本文实例讲述了JS实现的新浪微博大厅文字内容滚动效果代码。分享给大家供大家参考,具体如下:

新浪微博大厅滚动tweets-slide,JavaScript实现,貌似这些天有不少朋友需要这功能,前几天已经发了几个了,不过今天发现这款竟然还要好,不敢独享,希望需要的朋友喜欢哦。

运行效果截图如下:

JS实现的新浪微博大厅文字内容滚动效果代码

在线演示地址如下:

具体代码如下:

<!doctype html>
<html>
<head>
<title>新浪微博大厅滚动tweets-slide</title>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<style type="text/css">
ul, li {margin:0; padding:0;list-style:none}
body {
 margin: 0;
 height: 100%;
 background: #333;
}
.wp {
 position: relative;
 width: 800px;
 height: 400px;
 overflow: hidden;
 margin: 20px auto;
 border: 4px solid #121212;
 background: #fff;
}
.slider {
 position: absolute;
 width: 760px;
 padding: 0 20px;
 left:0;
 top: 0;
}
.fl {float:left}
.slider img {display:block; padding: 2px; border: 1px solid #ccc} 
.slider li {padding: 20px 0; border-bottom: 1px dashed #ccc;overflow:hidden;width:100%}
.slider p {font-size: 12px;margin:0;padding-left:68px;color:#333;line-height:20px;}
</style>
<script type="text/javascript">
function H$(i) {return document.getElementById(i)}
function H$$(c, p) {return p.getElementsByTagName(c)}
var slider = function () {
 function init (o) {
  this.id = o.id;
  this.at = o.auto ? o.auto : 3;
  this.o = 0;
  this.pos();
 }
 init.prototype = {
  pos : function () {
   clearInterval(this.__b);
   this.o = 0;
   var el = H$(this.id), li = H$$('li', el), l = li.length;
   var _t = li[l-1].offsetHeight;
   var cl = li[l-1].cloneNode(true);
   cl.style.opacity = 0; cl.style.filter = 'alpha(opacity=0)';
   el.insertBefore(cl, el.firstChild);
   el.style.top = -_t + 'px';
   this.anim();
  },
  anim : function () {
   var _this = this;
   this.__a = setInterval(function(){_this.animH()}, 20);
  },
  animH : function () {
   var _t = parseInt(H$(this.id).style.top), _this = this;
   if (_t >= -1) {
    clearInterval(this.__a);
    H$(this.id).style.top = 0;
    var list = H$$('li',H$(this.id));
    H$(this.id).removeChild(list[list.length-1]);
    this.__c = setInterval(function(){_this.animO()}, 20);
    //this.auto();
   }else {
    var __t = Math.abs(_t) - Math.ceil(Math.abs(_t)*.07);
    H$(this.id).style.top = -__t + 'px';
   }
  },
  animO : function () {
   this.o += 2;
   if (this.o == 100) {
    clearInterval(this.__c);
    H$$('li',H$(this.id))[0].style.opacity = 1;
    H$$('li',H$(this.id))[0].style.filter = 'alpha(opacity=100)';
    this.auto();
   }else {
    H$$('li',H$(this.id))[0].style.opacity = this.o/100;
    H$$('li',H$(this.id))[0].style.filter = 'alpha(opacity='+this.o+')';
   }
  },
  auto : function () {
   var _this = this;
   this.__b = setInterval(function(){_this.pos()}, this.at*1000);
  }
 }
 return init;
}();
</script>
</head>
<body>
<div class="wp">
 <ul id="slider" class="slider">
  <li><a class="fl" href="javascript:;"><img src="images/u160412.jpg" alt="" /></a>
   <p>曾虑多情损梵行

 入山又恐别倾城


 世间安得双全法


 不负如来不负卿</p>
  </li>
  <li><a class="fl" href="javascript:;"><img src="images/u160412.jpg" alt="" /></a>
   <p>第一最好不相见,如此便可不相恋。
第二最好不相知,如此便可不相思。<br/> 
第三最好不相伴,如此便可不相欠。
第四最好不相惜,如此便可不相忆。<br/> 
第五最好不相爱,如此便可不相弃。 
  </li>
  <li><a class="fl" href="javascript:;"><img src="images/u160412.jpg" alt="" /></a>
   <p>人生若只如初见,何事秋风悲画扇。
等闲变却故人心,却道故人心易变。<br/>
骊山语罢清宵半,泪雨零铃终不怨。
何如薄幸锦衣郎,比翼连枝当日愿。</p>
  </li>
  <li><a class="fl" href="javascript:;"><img src="images/u160412.jpg" alt="" /></a>
   <p>今天天气不错,我们都出来郊游了,可不一会就下起了雨,都淋湿了,但心情很爽噢。<br/>必竟我们不怎么出来玩,一出来就碰到了雨,很荣幸哦!</p>
  </li>
 </ul>
</div>
<script type="text/javascript">
new slider({id:'slider'})
</script>
</body>
</html>

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
比较简单实用的使用正则三种版本的js去空格处理方法
Nov 18 Javascript
禁用JavaScript控制台调试的方法
Mar 07 Javascript
JQEasy-ui在IE9以下版本中二次加载的问题分析及处理方法
Jun 23 Javascript
JS实现可关闭的对联广告效果代码
Sep 14 Javascript
JQuery 在文档中查找指定name的元素并移除的实现方法
May 19 Javascript
javascript 中的继承实例详解
May 05 Javascript
基于LayUI实现前端分页功能的方法
Jul 22 Javascript
Vue刷新修改页面中数据的方法
Sep 16 Javascript
jQuery+vue.js实现的多选下拉列表功能示例
Jan 15 jQuery
vue实现歌手列表字母排序下拉滚动条侧栏排序实时更新
May 14 Javascript
小程序server请求微信服务器超时的解决方法
May 21 Javascript
react中hook介绍以及使用教程
Dec 11 Javascript
JS实现自定义简单网页软键盘效果代码
Nov 05 #Javascript
JavaScript实现cookie的写入、读取、删除功能
Nov 05 #Javascript
JS实现slide文字框缩放伸展效果代码
Nov 05 #Javascript
如何防止JavaScript自动插入分号
Nov 05 #Javascript
javascript常用函数(2)
Nov 05 #Javascript
使用JavaScript和CSS实现文本隔行换色的方法
Nov 04 #Javascript
javascript常用函数(1)
Nov 04 #Javascript
You might like
谨慎使用PHP的引用原因分析
2012/09/06 PHP
PHP递归删除目录几个代码实例
2014/04/21 PHP
PHP中应该避免使用同名变量(拆分临时变量)
2015/04/03 PHP
ZendFramework2连接数据库操作实例
2017/04/18 PHP
Javascript和Ajax中文乱码吐血版解决方案
2009/12/21 Javascript
javascript 隔行换色函数代码
2010/10/24 Javascript
JS获得URL超链接的参数值实例代码
2013/06/21 Javascript
JS显示下拉列表框内全部元素的方法
2015/03/31 Javascript
信息页文内画中画广告js实现代码(文中加载广告方式)
2016/01/03 Javascript
jQuery中的一些常见方法小结(推荐)
2016/06/13 Javascript
详解基于javascript实现的苹果系统底部菜单
2016/12/02 Javascript
js实现简单的获取验证码按钮效果
2017/03/03 Javascript
nodejs中模块定义实例详解
2017/03/18 NodeJs
vue.js实现含搜索的多种复选框(附源码)
2017/03/23 Javascript
ng-alain表单使用方式详解
2018/07/10 Javascript
Vue中 key keep-alive的实现原理
2018/09/18 Javascript
Vue使用NPM方式搭建项目
2018/10/25 Javascript
Vue实现购物车实例代码两则
2020/05/30 Javascript
Nginx搭建HTTPS服务器和强制使用HTTPS访问的方法
2015/08/16 Python
python实现剪切功能
2019/01/23 Python
python中return的返回和执行实例
2019/12/24 Python
Python3如何使用range函数替代xrange函数
2020/10/05 Python
python 自定义异常和主动抛出异常(raise)的操作
2020/12/11 Python
Html5实现如何在两个div元素之间拖放图像
2013/03/29 HTML / CSS
Tom Dixon官网:英国照明及家具设计和制造公司
2019/03/01 全球购物
商业项目策划方案
2014/06/05 职场文书
找工作求职信
2014/07/07 职场文书
小学科学教学计划
2015/01/21 职场文书
基层工作经历证明
2015/06/19 职场文书
讲座新闻稿
2015/07/18 职场文书
2015年小学远程教育工作总结
2015/07/28 职场文书
运动会广播稿300字
2015/08/19 职场文书
《小乌鸦爱妈妈》教学反思
2016/02/19 职场文书
pytorch实现线性回归以及多元回归
2021/04/11 Python
JVM入门之类加载与字节码技术(类加载与类的加载器)
2021/06/15 Java/Android
Django+Celery实现定时任务的示例
2021/06/23 Python