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 相关文章推荐
DOM 中的事件处理介绍
Jan 18 Javascript
循环 vs 递归浅谈
Feb 28 Javascript
JQuery下拉框应用示例介绍
Apr 23 Javascript
node.js中实现同步操作的3种实现方法
Dec 05 Javascript
将JavaScript的jQuery库中表单转化为JSON对象的方法
Nov 17 Javascript
jQuery简单实现tab选项卡切换效果
Jun 20 Javascript
基于JavaScript实现前端文件的断点续传
Oct 17 Javascript
JS利用正则表达式实现简单的密码强弱判断实例
Jun 16 Javascript
Vue-axios-post数据后端接不到问题解决
Jan 09 Javascript
Javascript类型判断相关例题及解析
Aug 26 Javascript
uni-app使用countdown插件实现倒计时
Nov 01 Javascript
vue中父子组件的参数传递和应用示例
Jan 04 Vue.js
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
使用XDebug调试及单元测试覆盖率分析
2011/01/27 PHP
PHP中英混合字符串截取函数代码
2011/07/17 PHP
计算php页面运行时间的函数介绍
2013/07/01 PHP
PHP获取客户端及服务器端IP的封装类
2016/07/21 PHP
JQuery动画与特效实例分析
2015/02/02 Javascript
javascript操作select元素实例分析
2015/03/27 Javascript
使用JavaScript实现旋转的彩圈特效
2015/06/23 Javascript
JS+CSS实现经典的左侧竖向滑动菜单效果
2015/09/23 Javascript
JS简单获取当前年月日星期的方法示例
2017/02/07 Javascript
jquery Form轻松实现文件上传
2017/05/24 jQuery
BootStrap 动态表单效果
2017/06/02 Javascript
MUI 实现侧滑菜单及其主体部分上下滑动的方法
2018/01/25 Javascript
Vue项目引发的「过滤器」使用教程
2019/03/12 Javascript
Vue CLI3基础学习之pages构建多页应用
2019/06/02 Javascript
JavaScript 防抖和节流遇见的奇怪问题及解决
2020/11/20 Javascript
python getopt 参数处理小示例
2009/06/09 Python
详解Python的hasattr() getattr() setattr() 函数使用方法
2018/07/09 Python
Python实现高斯函数的三维显示方法
2018/12/29 Python
Python中类的创建和实例化操作示例
2019/02/27 Python
python射线法判断一个点在图形区域内外
2019/06/28 Python
kali中python版本的切换方法
2019/07/11 Python
Pycharm 安装 idea VIM插件的图文教程详解
2020/02/21 Python
python实现logistic分类算法代码
2020/02/28 Python
django 链接多个数据库 并使用原生sql实现
2020/03/28 Python
python使用多线程+socket实现端口扫描
2020/05/28 Python
汽车运用工程专业毕业生推荐信
2013/12/25 职场文书
《再别康桥》教学反思
2014/02/12 职场文书
英语演讲稿3分钟
2014/04/29 职场文书
党的群众路线教育实践活动总结报告
2014/07/03 职场文书
会计系毕业求职信
2014/08/07 职场文书
领导干部对照检查材料
2014/08/24 职场文书
教师竞聘上岗演讲稿
2014/09/03 职场文书
银行奉献演讲稿
2014/09/16 职场文书
军训结束新闻稿
2015/07/17 职场文书
【DOTA2】高能暴走TK秀!PSG LGD vs ASTER - DPC 2022 WINTER TOUR CN
2022/04/02 DOTA
深入理解MySQL中MVCC与BufferPool缓存机制
2022/05/25 MySQL