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 相关文章推荐
jquery ztree实现下拉树形框使用到了json数据
May 14 Javascript
js分页工具实例
Jan 28 Javascript
jquery实现标签上移、下移、置顶
Apr 26 Javascript
JS作用域链详解
Jun 26 Javascript
vue引入swiper插件的使用实例
Jul 19 Javascript
js实现1,2,3,5数字按照概率生成
Sep 12 Javascript
JavaScript控制浏览器全屏显示简单示例
Jul 05 Javascript
vue使用监听实现全选反选功能
Jul 06 Javascript
Angular-UI Bootstrap组件实现警报功能
Jul 16 Javascript
bootstrap select2插件用ajax来获取和显示数据的实例
Aug 09 Javascript
更改BootStrap popover的默认样式及popover简单用法
Sep 13 Javascript
24行JavaScript代码实现Redux的方法实例
Nov 17 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传值到不同页面的三种常见方式及php和html之间传值问题
2015/11/19 PHP
extjs grid取到数据而不显示的解决
2008/12/29 Javascript
javascript 日期时间函数(经典+完善+实用)
2009/05/27 Javascript
读jQuery之四(优雅的迭代)
2011/06/20 Javascript
js jquery验证银行卡号信息正则学习
2013/01/21 Javascript
Extjs中RowExpander控件的默认展开问题示例探讨
2014/01/24 Javascript
微信小程序表单验证错误提示效果
2017/05/19 Javascript
vue2.X组件学习心得(新手必看篇)
2017/07/05 Javascript
在react-router4中进行代码拆分的方法(基于webpack)
2018/03/08 Javascript
js合并两个数组生成合并后的key:value数组
2018/05/09 Javascript
JS数组进阶示例【数组的几种函数用法】
2020/01/16 Javascript
jQuery实现简单全选框
2020/09/13 jQuery
Python选择排序、冒泡排序、合并排序代码实例
2015/04/10 Python
python线程、进程和协程详解
2016/07/19 Python
Scrapy的简单使用教程
2017/10/24 Python
基于Python的文件类型和字符串详解
2017/12/21 Python
python3+PyQt5实现自定义分数滑块部件
2018/04/24 Python
Python 批量合并多个txt文件的实例讲解
2018/05/08 Python
python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
2020/08/04 Python
通俗讲解python 装饰器
2020/09/07 Python
python 如何用urllib与服务端交互(发送和接收数据)
2021/03/04 Python
泰国汽车、火车和轮渡票预订网站:Bus Online Ticket
2017/09/09 全球购物
美国最大的电子宠物训练产品制造商:PetSafe
2018/10/12 全球购物
物流专业大学生求职信范文
2013/10/28 职场文书
酒店办公室文员岗位职责
2013/12/18 职场文书
《长城和运河》教学反思
2014/04/14 职场文书
文秘自荐信
2014/06/28 职场文书
初中优秀教师事迹材料
2014/08/18 职场文书
房屋买卖授权委托书
2014/09/27 职场文书
学习焦裕禄精神践行三严三实心得体会
2014/10/13 职场文书
无锡灵山大佛导游词
2015/02/09 职场文书
2015年政风行风工作总结
2015/04/21 职场文书
戒赌保证书
2015/05/11 职场文书
前端监听websocket消息并实时弹出(实例代码)
2021/11/27 Javascript
Mysql中mvcc各场景理解应用
2022/08/05 MySQL
Java中的Kafka为什么性能这么快及4大核心详析
2022/09/23 Java/Android