js如何实现淡入淡出效果

js如何实现淡入淡出效果

本文主要介绍native js如何实现淡入淡出效果。本文为您提供了打包的代码。本文中的示例代码非常详细,具有一定的参考价值。感兴趣的朋友可以参考一下。

淡入效果在日常项目中经常使用。可惜原生JS没有类似的方法,有时候小页面不值得引入一个jQuery库,所以我自己写了一个,打包了,很有用,可以直接用。还有一种设置代码中元素透明度的方法,按照IE规则设置(0~100)。如果换成标准的设置方式(0.00~1.00),下面使用时请考虑浮点来准确表达差异。

参数说明:

FadeIn()和fadeOut()有三个参数,第一个是

事件

,必选;第二个是

淡入淡出速度

,正整数,自己加权,可选参数;第三种是指定

淡入淡出到的透明度值

(类似jQuery中的fadeTo(),0到100的正整数值,也是可选参数。

关键代码:

//淡入效果(包括淡入到指定的透明度)

功能淡入(元素、速度、不透明度){

/*

*参数描述

* elem==要淡入的元素。

* speed==淡入速度,正整数(可选)

*不透明度==淡入指定的透明度,0~100(可选)

*/

speedspeed=速度| | 20;

opacityopacity=opacity | | 100

//显示元素并将元素值设置为0透明度(不可见)

elem . style . display= block ;

iBase。seto capacity(elem,0);

//将透明度更改值初始化为0

var val=0;

//循环将透明度值递增5,即淡入效果。

(函数(){

iBase。seto capacity(elem,val);

val=5;

if (val=opacity) {

setTimeout(参数.被调用方,速度)

}

})();

}

//淡出效果(包括淡出到指定的透明度)

功能淡出(元素、速度、不透明度){

/*

*参数描述

* elem==要淡入的元素。

* speed==淡入速度,正整数(可选)

*不透明度==淡入指定的透明度,0~100(可选)

*/

speedspeed=速度| | 20;

opacity opacity=opacity | | 0;

//将透明度更改值初始化为0

var val=100

//循环将透明度值减少5,即淡出效果。

(函数(){

iBase。seto capacity(elem,val);

val-=5;

if (val=opacity) {

setTimeout(arguments.callee,speed);

}else if (val 0) {

//在元素透明度为0后隐藏元素

elem . style . display= none ;

}

})();

}

效果图:

核心代码,可以

直接复制代码查看效果

超文本标记语言

meta http-equiv= Content-Type Content= text/html;charset=gb2312 /

Title原生JS实现淡入淡出效果/title

风格

/*演示css*/

# demo div . box { float:left;宽度:31%;毛利:0 1%}

#演示分区框h2{margin-bottom:10px}

#demo div.box h2输入{ padding:5px 8px;字体大小:14pxfont-weight:bolder}

# demo div . box div { text-indent:10px;行高:22px边框:2px纯色# 555;填充:0.5em溢出:隐藏}

/风格

脚本

window.onload=function(){

//底层共享

var iBase={

Id:函数(名称){

返回document.getElementById(名称);

},

//设置元素透明度,透明度值根据IE规则计算,即0~100。

set capacity:function(ev,v){

电动过滤器?ev . style . filter= alpha(opacity= v ):ev . style . opacity=v/100;

}

}

//淡入效果(包括淡入到指定的透明度)

功能淡入(元素、速度、不透明度){

/*

*参数描述

* elem==要淡入的元素。

* speed==淡入速度,正整数(可选)

*不透明度==淡入指定的透明度,0~100(可选)

*/

speedspeed=速度| | 20;

opacityopacity=opacity | | 100

//显示元素并将元素值设置为0透明度(不可见)

elem . style . display= block ;

iBase。seto capacity(elem,0);

//将透明度更改值初始化为0

var val=0;

//循环将透明度值递增5,即淡入效果。

(函数(){

iBase。seto capacity(elem,val);

val=5;

if (val=opacity) {

setTimeout(参数.被调用方,速度)

}

})();

}

//淡出效果(包括淡出到指定的透明度)

功能淡出(元素、速度、不透明度){

/*

*参数描述

* elem==要淡入的元素。

* speed==淡入速度,正整数(可选)

*不透明度==淡入指定的透明度,0~100(可选)

*/

speedspeed=速度| | 20;

opacity opacity=opacity | | 0;

//将透明度更改值初始化为0

var val=100

//循环将透明度值减少5,即淡出效果。

(函数(){

iBase。seto capacity(elem,val);

val-=5;

if (val=opacity) {

setTimeout(arguments.callee,speed);

}else if (val 0) {

//在元素透明度为0后隐藏元素

elem . style . display= none ;

}

})();

}

var btns=iBase。Id(demo )。getElementsByTagName(“input”);

btns[0]。onclick=function(){

fadeIn(iBase。id( fade in );

}

btns[1]。onclick=function(){

淡出(iBase。Id(fadeOut ),40);

}

btns[2]。onclick=function(){

淡出(iBase。Id(fadeTo ),20,10);

}

}

/脚本

/头

身体

!-演示开始-

div id=demo

div class=box

H2input type=button value=单击以淡入//h2

div id= fade in style= display:none

我们/p

/div

p我们是国内专业的建站资源和脚本编程学习网站,提供asp、php、ASP.NET、javascript、jquery、vbscript、dos批处理、网页制作、网络编程、网站建设等编程素材。/p

/div

div class=box

H2input type=button value=单击以淡出//h2

div id=fadeOut

我们/p

/div

p我们是国内专业的建站资源和脚本编程学习网站,提供asp、php、ASP.NET、javascript、jquery、vbscript、dos批处理、网页制作、网络编程、网站建设等编程素材。/p

/div

div class=box

H2input type=button value=单击以淡出到指定的透明度//h2

div id=fadeTo

我们/p

/div

p我们是国内专业的建站资源和脚本编程学习网站,提供asp、php、ASP.NET、javascript、jquery、vbscript、dos批处理、网页制作、网络编程、网站建设等编程素材。/p

/div

/div

!-演示结束-

/body

/html

以上是原生js实现淡入淡出效果的全部代码。希望对大家的学习有帮助。

js如何实现淡入淡出效果