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控制图片的hover效果(smartRollover.js)
Mar 18 Javascript
showModalDialog模态对话框的使用详解以及浏览器兼容
Jan 11 Javascript
JQuery插件Quicksand实现超炫的动画洗牌效果
May 03 Javascript
JQuery中ajax方法访问web服务实例
Jul 18 Javascript
js数组常用操作方法小结(增加,删除,合并,分割等)
Aug 02 Javascript
js+html制作简单验证码
Feb 16 Javascript
AngularJS自定义指令实现面包屑功能完整实例
May 17 Javascript
详谈表单重复提交的三种情况及解决方法
Aug 16 Javascript
微信小程序使用navigateTo数据传递的实例
Sep 26 Javascript
Javascript将图片的绝对路径转换为base64编码的方法
Jan 11 Javascript
layui-laydate时间日历控件使用方法详解
Nov 15 Javascript
vue实现跳转接口push 转场动画示例
Nov 01 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应用提速面面观
2006/10/09 PHP
附件名前加网站名
2008/03/23 PHP
php将url地址转化为完整的a标签链接代码(php为url地址添加a标签)
2014/01/17 PHP
php支付宝手机网页支付类实例
2015/03/04 PHP
Symfony2创建基于域名的路由相关示例
2016/11/14 PHP
PHP Laravel 上传图片、文件等类封装
2017/08/16 PHP
定义JavaScript二维数组采用定义数组的数组来实现
2012/12/09 Javascript
Javascript获取HTML静态页面参数传递值示例
2013/08/18 Javascript
jquery滚动条插件jScrollPane的使用介绍
2013/11/08 Javascript
jQuery切换网页皮肤并保存到Cookie示例代码
2014/06/16 Javascript
从数据库读取数据后将其输出成html标签的三种方法
2014/10/13 Javascript
jQuery实现hover合成事件的方法
2015/08/06 Javascript
JavaScript数组的一些奇葩行为
2016/01/25 Javascript
Vue单文件组件的如何使用方式介绍
2017/07/28 Javascript
详解使用PM2管理nodejs进程
2017/10/24 NodeJs
基于vue cli重构多页面脚手架过程详解
2018/01/23 Javascript
Vue组件创建和传值的方法
2018/08/17 Javascript
微信小程序移动拖拽视图-movable-view实例详解
2019/08/17 Javascript
浅谈小程序globalData的那些事儿
2019/11/01 Javascript
[00:36]DOTA2勇士令状莱恩声望物品——冥晶之厄展示
2018/05/25 DOTA
python使用7z解压软件备份文件脚本分享
2014/02/21 Python
介绍Python中内置的itertools模块
2015/04/29 Python
python得到单词模式的示例
2018/10/15 Python
基于opencv实现简单画板功能
2020/08/02 Python
女士鞋子、包包和服装在线,第一款10美元:ShoeDazzle
2019/07/26 全球购物
大专学生推荐信范文
2013/11/19 职场文书
医药销售求职信范文
2014/02/01 职场文书
篝火晚会主持词
2014/03/25 职场文书
办公室主任岗位承诺书
2014/05/29 职场文书
学雷锋志愿者活动总结
2014/06/27 职场文书
建筑工程造价专业自荐信
2014/07/08 职场文书
人力资源职位说明书
2014/07/29 职场文书
公务员上班玩游戏检讨书
2014/09/17 职场文书
群众路线学习笔记范文
2014/11/06 职场文书
为什么 Nginx 比 Apache 更牛逼
2021/03/31 Servers
2021年pycharm的最新安装教程及基本使用图文详解
2021/04/03 Python