首页 > 编程 > JavaScript > 正文

JavaScript实现仿新浪微博大厅和腾讯微博首页滚动特效源码

2019-11-20 11:34:04
字体:
来源:转载
供稿:网友

JavaScript实现仿新浪微博大厅和未登录腾讯微博首页滚动效果,貌似这些天有不少朋友需要这功能,前几天已经发了几个了,不过那一个效果是用jquery实现的《jQuery向上循环滚动(仿新浪微博未登录首页滚动微博显示)》,今天发现这款是js制作的好,不敢独享,希望需要的朋友喜欢哦。

效果图展示如下:

查看演示         源码下载

html代码

<div class="wp"><ul id="slider" class="slider"><li><a class="fl" href="javascript:;"><img src="http://t1.qlogo.cn/mbloghead/b9127c4ca63961bace88/50" alt="" /></a><p>入山又恐别倾城 世间安得双全 不负如来不负卿</p> </li><li><a class="fl" href="javascript:;"><img src="http://t1.qlogo.cn/mbloghead/b9127c4ca63961bace88/50" alt="" /></a><p>第一最好不相见,如此便可不相恋。</p></li><li><a class="fl" href="javascript:;"><img src="http://t1.qlogo.cn/mbloghead/b9127c4ca63961bace88/50" alt="" /></a><p>那一天 闭目在经殿香雾</p> </li><li><a class="fl" href="javascript:;"><img src="http://t1.qlogo.cn/mbloghead/b9127c4ca63961bace88/50" alt="" /></a><p> 你见 或者不见我 我就在那里 </p></li></ul></div><script type="text/javascript">new slider({id:'slider'})</script> 

css代码

ul, li {margin:0;padding:0;list-style:none}a{ color:#fff;}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;}

js代码

function H$(i) {return document.getElementById(i)}function H$$(c, p) {return p.getElementsByTagName(c)}var slider = function () {function inits (o) {this.id = o.id;this.at = o.auto ? o.auto : 3;this.o = 0;this.pos();alert(o);}inits.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 inits;}();

以上内容就是小编给大家分享的JavaScript实现仿新浪微博大厅和腾讯微博首页滚动特效源码,希望大家喜欢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表