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用图作提交按钮或超连接
Mar 26 Javascript
面向对象的Javascript之二(接口实现介绍)
Jan 27 Javascript
高性能Javascript笔记 数据的存储与访问性能优化
Aug 02 Javascript
JS匀速运动演示示例代码
Nov 26 Javascript
jquery使用jquery.zclip插件复制对象的实例教程
Dec 04 Javascript
sogou地图API用法实例教程
Sep 11 Javascript
AngularJS实现Model缓存的方式
Feb 03 Javascript
angularJS深拷贝详解
Mar 23 Javascript
详解react-router4 异步加载路由两种方法
Sep 12 Javascript
fetch 使用及如何接收JS传值
Nov 11 Javascript
详解JavaScript事件循环机制
Sep 07 Javascript
JS中如何轻松遍历对象属性的方式总结
Aug 06 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
杏林同学录(六)
2006/10/09 PHP
php数据结构 算法(PHP描述) 简单选择排序 simple selection sort
2011/08/09 PHP
php array_filter除去数组中的空字符元素
2020/06/21 PHP
php中防止恶意刷新页面的代码小结
2012/10/31 PHP
phpstudy默认不支持64位php的解决方法
2017/02/20 PHP
php成功操作redis cluster集群的实例教程
2019/01/13 PHP
Yii2框架中一些折磨人的坑
2019/12/15 PHP
PHP Beanstalkd消息队列的安装与使用方法实例详解
2020/02/21 PHP
输入框的字数时时统计—关于 onpropertychange 和 oninput 使用
2011/10/21 Javascript
jquery中ajax跨域方法实例分析
2015/12/18 Javascript
js点击文本框弹出可选择的checkbox复选框
2016/02/03 Javascript
微信小程序-横向滑动scroll-view隐藏滚动条
2017/04/20 Javascript
基于react框架使用的一些细节要点的思考
2017/05/31 Javascript
微信小程序实现图片上传功能
2018/05/28 Javascript
微信小程序使用map组件实现路线规划功能示例
2019/01/22 Javascript
详解Vue源码学习之双向绑定
2019/04/10 Javascript
VScode格式化ESlint方法(最全最好用方法)
2019/09/10 Javascript
webpack4 optimization使用总结
2019/11/10 Javascript
微信小程序实现滑动翻页效果(完整代码)
2019/12/06 Javascript
通过Kettle自定义jar包供javascript使用
2020/01/29 Javascript
分享8个JavaScript库可更好地处理本地存储
2020/10/12 Javascript
Python 操作文件的基本方法总结
2017/08/10 Python
解决Python下imread,imwrite不支持中文的问题
2018/12/05 Python
python提取照片坐标信息的实例代码
2019/08/14 Python
Pytorch.nn.conv2d 过程验证方式(单,多通道卷积过程)
2020/01/03 Python
Python实现像awk一样分割字符串
2020/09/15 Python
python爬取招聘要求等信息实例
2020/11/20 Python
python 模拟登录B站的示例代码
2020/12/15 Python
自我鉴定范文300字
2013/10/01 职场文书
自行车租赁公司创业计划书
2014/01/28 职场文书
企业标语口号
2014/06/10 职场文书
六一领导慰问欢迎词
2015/01/26 职场文书
单位租车协议书
2015/01/29 职场文书
经费申请报告
2015/05/15 职场文书
2016圣诞节贺卡寄语
2015/12/07 职场文书
在python中实现导入一个需要传参的模块
2021/05/12 Python