本文实例讲述了JS模拟酷狗音乐播放器收缩折叠关闭效果代码。分享给大家供大家参考,具体如下:

这是一款模拟酷狗音乐播放器的关闭特效,采用JavaScript实现,关闭的时候播放界面缩成一条线,然后消失,就像有些电视机突然停电的效果,很有意思的网页动画特效。

运行效果截图如下:

在线演示地址如下:

具体代码如下:

/p>

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

酷狗音乐播放器的关闭特效,采用JavaScript实现

* {

padding:0px;

margin:0px;

}

#outer {

width:952px;

height: 640px;

position:absolute;

left:100px;

top:20px; }

#div1 {

width:952px;

height: 640px;

overflow:hidden;

position:absolute;font-size:0px;

}

#div1 a {

position:absolute;

width:23px;

height:21px;

right:5px;

top:5px;

display:block; z-index:100; background:url(images/kugou.jpg) no-repeat 957px 645px;}

#div1 a:hover {

background:url(images/hover.jpg) no-repeat right top;

}

#line {

height:3px;

width:952px;

display:none;

z-index:100;

position:absolute;

left:0px;

top:0px; font-size:0px;

}

#light{ /*width:50px; height:10px;*/ position:absolute; left:50%; top:50%;/* margin-left:-25px; margin-top:-5px;*/ width:0px; height:0px; filter:alpha(opacity:0);opacity:0;); overflow:hidden;}

function css(obj, attr, value)

{

if(arguments.length==2)

{

if(attr!='opacity')

{

return parseInt(obj.currentStyle?obj.currentStyle[attr]:document.defaultView.getComputedStyle(obj, false)[attr]);

}

else

{

return Math.round(100*parseFloat(obj.currentStyle?obj.currentStyle[attr]:document.defaultView.getComputedStyle(obj, false)[attr]));

}

}

else if(arguments.length==3)

switch(attr)

{

case 'width':

case 'height':

case 'paddingLeft':

case 'paddingTop':

case 'paddingRight':

case 'paddingBottom':

value=Math.max(value,0);

case 'left':

case 'top':

case 'marginLeft':

case 'marginTop':

case 'marginRight':

case 'marginBottom':

obj.style[attr]=value+'px';

break;

case 'opacity':

obj.style.filter="alpha(opacity:"+value+")";

obj.style.opacity=value/100;

break;

default:

obj.style[attr]=value;

}

return function (attr_in, value_in){css(obj, attr_in, value_in)};

}

var MIAOV_MOVE_TYPE={

BUFFER: 1,

FLEX: 2

};//json

function miaovStopMove(obj)

{

clearInterval(obj.timer);

}

function miaovStartMove(obj, oTarget,iSpeedCtrol, iType, fnCallBack, fnDuring)

{

var fnMove=null;

if(obj.timer)

{

clearInterval(obj.timer);

}

switch(iType)

{

case MIAOV_MOVE_TYPE.BUFFER:

fnMove=miaovDoMoveBuffer;

break;

case MIAOV_MOVE_TYPE.FLEX:

fnMove=miaovDoMoveFlex;

break;

}

obj.timer=setInterval(function (){

fnMove(obj, oTarget,iSpeedCtrol, fnCallBack, fnDuring);

}, 30);

}

function miaovDoMoveBuffer(obj, oTarget,iSpeedCtrol, fnCallBack, fnDuring)

{

var bStop=true;

var attr='';

var speed=0;

var cur=0;

for(attr in oTarget)

{

cur=css(obj, attr);

if(oTarget[attr]!=cur)

{

bStop=false;

speed=(oTarget[attr]-cur)/iSpeedCtrol;

speed=speed>0?Math.ceil(speed):Math.floor(speed);

css(obj, attr, cur+speed);

}

}

if(fnDuring)fnDuring.call(obj);

if(bStop)

{

clearInterval(obj.timer);

obj.timer=null;

if(fnCallBack)fnCallBack.call(obj);

}

}

function miaovDoMoveFlex(obj, oTarget,iSpeedCtrol, fnCallBack, fnDuring)

{

var bStop=true;

var attr='';

var speed=0;

var cur=0;

for(attr in oTarget)

{

if(!obj.oSpeed)obj.oSpeed={};

if(!obj.oSpeed[attr])obj.oSpeed[attr]=0;

cur=css(obj, attr);

if(Math.abs(oTarget[attr]-cur)>=1 || Math.abs(obj.oSpeed[attr])>=1)

{

bStop=false;

obj.oSpeed[attr]+=(oTarget[attr]-cur)/iSpeedCtrol;

obj.oSpeed[attr]*=0.7;

css(obj, attr, cur+obj.oSpeed[attr]);

}

}

if(fnDuring)fnDuring.call(obj);

if(bStop)

{

clearInterval(obj.timer);

obj.timer=null;

if(fnCallBack)fnCallBack.call(obj);

}

}

window.οnlοad=function(){

var oDiv1 = document.getElementById('div1');

var oAbtn = oDiv1.getElementsByTagName('a')[0];

var oImg1 = document.getElementById('img1');

var oImg2 = document.getElementById('img2');

var oImg3 = document.getElementById('img3');

var oLine = document.getElementById('line');

var oLight = document.getElementById('light');

oAbtn.οnclick=function(){

miaovStartMove(oDiv1, {height:3,marginTop:315},1.5, MIAOV_MOVE_TYPE.BUFFER,function(){

oImg1.style.display='none';

oLine.style.display='block';

miaovStartMove(oDiv1, {width:0,marginLeft:476},2, MIAOV_MOVE_TYPE.BUFFER);

miaovStartMove(oLine, {width:0},2, MIAOV_MOVE_TYPE.BUFFER);

miaovStartMove(oImg2, {width:0},2, MIAOV_MOVE_TYPE.BUFFER,function(){

miaovStartMove(oImg3, {width:200,height:10},1, MIAOV_MOVE_TYPE.BUFFER);

miaovStartMove(oLight, {width:200,height:10,marginLeft:-100,marginTop:-5,opacity:100},1, MIAOV_MOVE_TYPE.BUFFER,function(){

miaovStartMove(oLight, {opacity:0},1, MIAOV_MOVE_TYPE.BUFFER);

});

});

});

}

}

希望本文所述对大家JavaScript程序设计有所帮助。

html音乐播放器收起展开代码,JS模拟酷狗音乐播放器收缩折叠关闭效果代码相关推荐

  1. 网页mp3提取器_用Python写一个酷狗音乐下载器!

    [这就是标题] 距离上一次发推送差不多有一个月了ヽ(ー_ー)ノ 做了一个小的酷狗音乐下载器,公众号内回复704就可以收到下载链接. 长下面这样. 双击打开,会提示让输入你要搜索的歌曲. 这里输入去流浪 ...

  2. android 高仿酷狗源码,项目源码--Android类似酷狗音乐播放器

    知识技能概要: 1.音乐文件的扫描与管理 2.音频流的解码 3. UI控件的综合使用 4.播放列表方式管理 5.随机播放方式 6.源码带详细的中文注释 ...... 详细介绍 1.音乐文件的扫描与管理 ...

  3. [AHK] 定义热键控制酷狗音乐播放器

    ==================最新版本==================== 1.请ahk官网下载ahk环境,约3M,安装u32版本. 2.将本脚本存成.ahk文件,双击运行. 3.热键说明C ...

  4. android 酷狗demo_酷狗音乐Android客户端详细使用评测

    曾经现在酷狗音乐一直是PC机上必装的音乐播放软件,手机音乐播放器哪个好用呢,酷狗音乐Android客户端也经过几个版本更新,版酷狗音乐的功能,界面都趋于完美.下面来看看酷狗音乐Android客户端详细 ...

  5. 酷狗音乐推出酷狗小程序开放平台

    最近松松编辑杰哥了解到,继微信小程序,百度智能小程序,支付宝小程序,今日头条小程序之后,酷狗音乐竟然也搞起推小程序开发平台,主打音乐领域! 根据杰哥了解,作为国内首个音乐垂直领域小程序开放平台,酷狗音 ...

  6. 酷狗音乐如何进入完整歌词界面

    酷狗音乐如何进入完整歌词界面 首先打开酷狗音乐播放器 1. 听歌的界面是这样的 2. 想显示歌词就变成了桌面歌词 3. 想显示完整歌词的话,需要进行以下操作 3.1随便选择一个可以观看MV的歌曲 3. ...

  7. 酷狗音乐应用在计算机里怎么拖出来,电脑如何使用酷狗音乐剪辑音乐|电脑使用酷狗音乐剪辑音乐的方法...

    很多人都在玩短视频,像是抖音,秒拍等软件,一些视频会有音乐和特效,变得非常有个性.所以一些用户想要剪辑音乐,但是不知道怎么操作,其实酷狗音乐就自带有剪辑音乐的功能,这样就不用下载其他专业的剪辑音乐软件 ...

  8. 酷狗音乐车载Android版,酷狗音乐车载版

    酷狗音乐车载版介绍 酷狗音乐车载版是国内老牌数字音乐播放软件,酷狗音乐盒集歌曲搜索播放.高清MV在线点播以及KRC精准歌词等优秀功能于一身,在用户当中有着优秀的口碑. 酷狗音乐怎么去广告 很多的用户朋 ...

  9. 为什么酷狗音乐消息中心不可以服务器,手机酷狗音乐怎么设置好友消息免打扰?...

    手机酷狗音乐怎么设置好友消息免打扰? 腾讯视频/爱奇艺/优酷/外卖 充值4折起 酷狗音乐是迄今为止最强大,最多人使用的音乐软件,而在酷狗音乐经常收到某好友的消息?不想跟TA聊天,但是太烦人?可以设置好 ...

  10. 当贝酷狗音乐,沉浸式大屏娱乐新生态 媒体采购超市

    互联网时代进入下半场,消费互联网格局基本已定,我们可以看到除了短视频是用户娱乐生活的消遣,音乐作为另外一股常青的娱乐方式依然活跃,其中作为黑马角色的当贝酷狗音乐,当属以"唱歌"为核 ...

最新文章

  1. Java数据库foreign,mysql中的外键foreign key 作者:Java_xb
  2. python简单网页服务器示例
  3. java程序练习:猜字母
  4. 【今晚8点半】:对话袁家军——成都的多媒体圈
  5. 3GPP realease 5G realease
  6. 关于网页编码的故事,你都清楚嘛?utf与gbk的关系
  7. 如何利用Grasshopper中的C#制作一个简单的Tekla18.1直梁创建电池
  8. 谢尔宾斯基三角形:Python+turtle
  9. 神奇的Perl-哈希与数组(4)
  10. 简单理解O2O商业模式
  11. 珍贵的人生格言81条
  12. nuscenes instance 调研笔记
  13. One Note 插件NoteHighlight2016安装
  14. macM1安装tensorflow和torch教程(python3.8环境)
  15. 非线性编辑系统的选购
  16. LaTeX BibTeX的使用
  17. liferay监听器
  18. js、css 实现table表头固定
  19. 存储调研:BeeGFS并行文件系统体系结构
  20. Spark on YARN - Clinet模式运行spark报错问题

热门文章

  1. 服务器如何连接到虚拟机PXE,实机通过PXE启动虚拟机,如何设置
  2. CentOS 8使用 Kickstart配置 UEFI PXE 启动
  3. Wowza 4.3.0安装和使用 并联合海康摄像头(RTSP)实现直播推流
  4. 计算机表格计算公式加法,加法公式excel,excel表格如何用公式计算加减乘除混合运算?...
  5. 毕业设计 微信小程序 外卖点餐平台
  6. NATAPP内网穿透使用
  7. 电商产品竞品分析报告(聚水潭良品铺子)
  8. amos里CFA可行性辨别结果怎么看_本科毕业论文做问卷和数据分析应该怎么着手?(1)...
  9. Photoshop 2019 破解
  10. win7 java修复工具哪个好_DLL修复工具哪个好