发布一个基于javascript的动画类 Fx.js

 更新时间:2010年11月05日 23:11:32   作者:  
支持大部分CSS3属性的动画(可能要指定详细的属性值)。
复制代码 代码如下:

var example = new Fx(element,//元素
{
form:{
//动画前的样式
//color:"#00f",
},
to:{
//目标样式
color:"#00f",
"background-color":"#5f5",
opacity:0.9,
},
//线性方法
transition:Transition.elasticInOut,
//动画时间
duration:5000,
//动画帧值
fps:50,
onAnim:function(s){
//动画过程中
},
onStart:function(){
//动画开始时
},
onPause:function(){
//动画暂停时
},
onResume:function(){
//动画恢复时
},
onStop:function(){
//动画停止时
}
}
);
//开始动画
example.start();
//停止动画
example.stop();
//停止动画并恢复到原始样式
example.stop(1);
//暂停动画
example.pause();
//恢复动画
example.resume();

完整演示代码:
复制代码 代码如下:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Fx动画类 支持CSS3</title>
<style type="text/css">
*{ margin:0; padding:0; font-size:12px;}
#anim{ border-bottom:3pt solid #006;!important}
button{ width:70px; height:30px; font-size:16px; text-align:center;}
</style>
<script src="../../scripts/Fx.js" type="text/javascript"></script>
<script type="text/javascript">
/* Demo */
var fx,showlog = false;
window.onload = function(){
var anim = document.getElementById("anim");
var log = document.getElementById("log");

fx = new Fx(anim,
{
to:{
position:"absolute",
left:"180px",
top:"180px",
color:"hsla(270, 50%, 50%, 0.8)",
"background-color":"#5f5",
//"background-color":"rgba(0,0,255,0.6)",//"rgb(0,255,128)",//
opacity:0.9,
"font-size":"76px",
"border-top-left-radius":"150px",
"border-top-right-radius":"150px",
"border-bottom-left-radius":"150px",
"border-bottom-right-radius":"150px",

"-moz-border-radius-topleft":"150px",
"-moz-border-radius-topright":"150px",
"-moz-border-radius-bottomright":"150px",
"-moz-border-radius-bottomleft":"150px",
"text-shadow":"#000 9px 6px 2px ",
"-webkit-box-shadow":"#ff0 30px 20px 8px 0px",
"-moz-box-shadow":"#ff0 30px 20px 8px 0px",
width:"300px",
height:"300px",
"line-height":"300px"
},
transition:Transition.elasticIn,//bounceIn
duration:5000,
onAnim:function(s){

var str="";
if(showlog){
str+= '<h1 style="color:red;font-size:16px;">runStyle:</h1>';
for(var k in s){
str+=k+":"+s[k]+"<br />";
}
str+= "laveTime:"+this.laveTime+"<br />";

}
log.innerHTML = str;
},
onStop:function(){
//alert("Stop");
}
}
);

};
</script>
</head>

<body>

<div id="anim" style="
position:absolute;
left:70px;
top:70px;
width:150px;
height:150px;
color:hsla(10, 70%, 70%, 0.8);
border:1px solid #666;
background-color:#ccf;
overflow:hidden;
text-shadow:0px 0px 0px #000;
font-size:26px;
-webkit-box-shadow:0px 0px 0px #000;
-moz-box-shadow:0px 0px 0px #000;
-moz-border-radius:0px;
text-align:center;
line-height:150px;" >
A</div>
<button onClick="fx.start();">start()</button>
<button onClick="fx.pause();">pause()</button>
<button onClick="fx.resume();">resume()</button>
<button onClick="fx.stop(0);">stop(0)</button>
<button onClick="fx.stop(1);">stop(1)</button>
<label for="showlog">显示数据:</label>
<input type="checkbox" id="showlog" onClick="showlog = this.checked;" />
<br />
<div id="log"></div>
</body>
</html>

打包下载

相关文章

  • javascript通过元素id和name直接取得元素的方法

    javascript通过元素id和name直接取得元素的方法

    这篇文章主要介绍了javascript通过元素id和name直接取得元素的方法,涉及javascript获取元素的相关技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • WebPack基础知识详解

    WebPack基础知识详解

    本文主要介绍了WebPack的基础知识,具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • JS实现深拷贝的4种方式介绍

    JS实现深拷贝的4种方式介绍

    这篇文章主要给大家介绍了关于JS实现深拷贝的4种方式,深拷贝是指将一个对象完整地拷贝一份,不受原对象影响,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2023-07-07
  • javascript实现文本域写入字符时限定字数

    javascript实现文本域写入字符时限定字数

    这篇文章主要介绍了javascript实现文本域的写入字符个数限定字数,需要的朋友可以参考下
    2014-02-02
  • javascript生成随机数的方法

    javascript生成随机数的方法

    这篇文章主要介绍了javascript生成随机数的方法,需要的朋友可以参考下
    2014-05-05
  • JavaScript中自定义事件用法分析

    JavaScript中自定义事件用法分析

    这篇文章主要介绍了JavaScript中自定义事件用法,较为详细的分析了自定义事件的原理与具体用法,具有一定的参考借鉴价值,需要的朋友可以参考下
    2014-12-12
  • JS获取和修改元素样式的实例代码

    JS获取和修改元素样式的实例代码

    下面小编就为大家带来一篇JS获取和修改元素样式的实例代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • 详解如何让InstantClick兼容MathJax、百度统计等

    详解如何让InstantClick兼容MathJax、百度统计等

    本篇文章主要介绍了如何让InstantClick兼容MathJax、百度统计等,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • js前端页面用插件docx-preview展示docx文件

    js前端页面用插件docx-preview展示docx文件

    这篇文章主要给大家介绍了如何使用docx-preview.min.js插件在页面上展示.docx文件,并说明了该插件依赖于jszip.min.js插件,通过实例展示了如何实现这一功能,需要的朋友可以参考下
    2024-11-11
  • 整理JavaScript创建对象的八种方法

    整理JavaScript创建对象的八种方法

    JavaScript创建对象的方法有很多种,本文给大家介绍javascript创建对象的八种方法,对javascript创建对象感兴趣的朋友可以参考下本篇文章
    2015-11-11

最新评论