js的一些函数封装
2016-09-29 23:39
411 查看
学习js封装的一些函数,测试可以用
//通过类名获取元素
function getClass(obj,name){
var arr=[];
var all=obj.getElementsByTagName('*');
for (var i=0;i<all.length;i++) {
if(all[i].className==name){
arr.push(all[i]);
}
}
return arr;
}
//获取和设置元素的样式,格式:myStyle(obj,'width')获取obj的宽度值;
//myStyle(obj,'width','400px')设置obj的宽度为400px
function myStyle(){
if(arguments.length==2){
if(arguments[0].currentStyle){
return arguments[0].currentStyle[arguments[1]];
}else{
return getComputedStyle(arguments[0],false)[arguments[1]];
}
}
else{
arguments[0].style[arguments[1]]=arguments[2];
}
}
//完美运动框架,格式:move(obj,{'opacity':100})设置opacity为1;
//move(obj,{'opacity':100,'width':400})同时设置透明度和宽度;
//move(obj,{'opacity':100},function (){ move(obj,{'width':400}); });
//先设置透明度为100,再设置宽度为400
function move(obj,json,fn){
var val=0;
clearInterval(obj.timer);
obj.timer=setInterval(function (){
var flag=true;
for(var arrt in json){
if(arrt=='opacity'){
val=Math.round(parseFloat(myStyle(obj,arrt))*100);
}else{
val=parseInt(myStyle(obj,arrt));
}
var speed=(json[arrt]-val)/10;
speed=speed>0?Math.ceil(speed):Math.floor(speed);
if(json[arrt]!=val){
flag=false;
}
if(arrt=='opacity'){
obj.style[arrt]=(val+speed)/100;
obj.style.filter='alpha(opacity:'+(val+speed)+')';
}else{
obj.style[arrt]=val+speed+'px';
}
}
if(flag){
clearInterval(obj.timer);
if(fn){
fn();
}
}
},30);
}
//通过类名获取元素
function getClass(obj,name){
var arr=[];
var all=obj.getElementsByTagName('*');
for (var i=0;i<all.length;i++) {
if(all[i].className==name){
arr.push(all[i]);
}
}
return arr;
}
//获取和设置元素的样式,格式:myStyle(obj,'width')获取obj的宽度值;
//myStyle(obj,'width','400px')设置obj的宽度为400px
function myStyle(){
if(arguments.length==2){
if(arguments[0].currentStyle){
return arguments[0].currentStyle[arguments[1]];
}else{
return getComputedStyle(arguments[0],false)[arguments[1]];
}
}
else{
arguments[0].style[arguments[1]]=arguments[2];
}
}
//完美运动框架,格式:move(obj,{'opacity':100})设置opacity为1;
//move(obj,{'opacity':100,'width':400})同时设置透明度和宽度;
//move(obj,{'opacity':100},function (){ move(obj,{'width':400}); });
//先设置透明度为100,再设置宽度为400
function move(obj,json,fn){
var val=0;
clearInterval(obj.timer);
obj.timer=setInterval(function (){
var flag=true;
for(var arrt in json){
if(arrt=='opacity'){
val=Math.round(parseFloat(myStyle(obj,arrt))*100);
}else{
val=parseInt(myStyle(obj,arrt));
}
var speed=(json[arrt]-val)/10;
speed=speed>0?Math.ceil(speed):Math.floor(speed);
if(json[arrt]!=val){
flag=false;
}
if(arrt=='opacity'){
obj.style[arrt]=(val+speed)/100;
obj.style.filter='alpha(opacity:'+(val+speed)+')';
}else{
obj.style[arrt]=val+speed+'px';
}
}
if(flag){
clearInterval(obj.timer);
if(fn){
fn();
}
}
},30);
}
相关文章推荐
- 我自己的Javascript 库,封装了一些常用函数 Kingwell.js
- 我自己的Javascript 库,封装了一些常用函数 Kingwell.js
- js原生函数一些封装
- 晒几条自个封装的js函数,欢迎拍砖。
- 一些常用的JS功能函数(二)(2009-04-24更新)
- 总结一些js自定义的函数
- php简单封装了一些常用JS操作
- 一些存储概念自己有用需要封装内存分配函数是了解
- js的一些小功能函数整理
- 一些不错的js函数ajax
- 一些常用的JS功能函数(一) (2009-06-04更新)
- ASP.NET 程序设计中常用到的一些通用函数 自己的封装 可以做成dll来使用。
- JS中的一些扩充函数,判断输入的内容
- 一些不错的JS 自定义函数第1/2页
- .net FrameWork封装的一些win32函数
- js中用数组对一些验证进行简单的封装
- 总结一些js自定义的函数
- 一些常用的JS函数
- 一些常用的JS功能函数代码