Javascript 创建一个动画元件的代码
2012-07-06 11:33
267 查看
var DHTMLSprite =function(params)
{
var width=params.width,
height=params.height,
imagesWidth=params.imagesWidth,
$element=params.$drawTarget.append("<div/>").find(':last'),
elementStyle=$element[0].style,
mathFloor=Math.floor;
$element.css({
position:'absolute',
width:width,
height:height,
backgroundImage:'url('+params.images+')'
});
var that={
draw:function(x,y){
elementStyle.left=x+'px';
elementStyle.top=y+'px';
return this;
},
changeImage:function(index){
index *=width;
var vOffset=-mathFloor(index/imagesWidth)*height;
var hOffset=-index%imagesWidth;
elementStyle.backgroundPosition=hOffset+'px '+vOffset+'px';
return this;
},
show:function(){
elementStyle.display='block';
return this;
},
hide:function(){
elementStyle.display='none';
return this;
},
destory:function(){
$element.remove();
}
}
return that;
}
var img =DHTMLSprite ({width:80,height:80,imagesWidth:330,$drawTarget:$("#group_nav"),images:'http://1812.img.pp.sohu.com.cn/images/2012/7/6/9/26/e33569437_1391c97fcacg213_b.jpg'}).draw(100,100).show();
var index=0;
var timer=function(){
if(index<20)
{
console.warn(index);
img.changeImage(index);
index++;
setTimeout(timer,20);
}else
{
img.hide();
img.destory();
}
}
timer();
{
var width=params.width,
height=params.height,
imagesWidth=params.imagesWidth,
$element=params.$drawTarget.append("<div/>").find(':last'),
elementStyle=$element[0].style,
mathFloor=Math.floor;
$element.css({
position:'absolute',
width:width,
height:height,
backgroundImage:'url('+params.images+')'
});
var that={
draw:function(x,y){
elementStyle.left=x+'px';
elementStyle.top=y+'px';
return this;
},
changeImage:function(index){
index *=width;
var vOffset=-mathFloor(index/imagesWidth)*height;
var hOffset=-index%imagesWidth;
elementStyle.backgroundPosition=hOffset+'px '+vOffset+'px';
return this;
},
show:function(){
elementStyle.display='block';
return this;
},
hide:function(){
elementStyle.display='none';
return this;
},
destory:function(){
$element.remove();
}
}
return that;
}
var img =DHTMLSprite ({width:80,height:80,imagesWidth:330,$drawTarget:$("#group_nav"),images:'http://1812.img.pp.sohu.com.cn/images/2012/7/6/9/26/e33569437_1391c97fcacg213_b.jpg'}).draw(100,100).show();
var index=0;
var timer=function(){
if(index<20)
{
console.warn(index);
img.changeImage(index);
index++;
setTimeout(timer,20);
}else
{
img.hide();
img.destory();
}
}
timer();
相关文章推荐
- 【iOS开发-50】利用创建新的类实现代码封装,从而不知不觉实践一个简单的MVC实验,附带个动画
- 【iOS开展-50】使用它来创建一个新的类的实现代码包,因此,不自觉地练习简单MVC实验,附带动画
- 通过Javascript创建一个选择文件的对话框代码
- 通过Javascript创建一个选择文件的对话框代码
- JavaScript创建一个欢迎cookie弹出窗实现代码
- 使用 JavaScript 创建一个带动画效果的固顶导航菜单
- JavaScript创建Checkbox,IE6一个弱智bug对代码的影响
- JavaScript创建一个欢迎cookie弹出窗实现代码
- javascript 通用loading动画效果实例代码
- 一个不错的,JavaScript代码,显示首页图片幻灯片效果
- 1、使用javascript代码写出一个函数:实现传入两个整数后弹出较大的整数
- JavaScript的eval函数,用法,用来执行JavaScript代码,即将JavaScript代码加载入内存(但是并没有执行和触发,跟加载js文件是一个道理,即将js文件加载入内存,但是js)
- 写一个MySql存储过程实现房贷等额本息还款计算(另外附javascript代码)
- 30行JavaScript代码,教你分分钟创建神经网络
- JavaScript实现的一个图片溶解特效代码
- 只有20行Javascript代码!手把手教你写一个页面模板引擎
- Android官方入门文档[16]创建一个Fragment代码片段
- ?一个XML对象在javascript中调用的代码错误
- 代码创建动画状态机