javascript 간이 운동

6574 단어 JavaScript
평소에 업무 중 에 홈 페이지 를 쓰 는 것 과 관련 된 운동 은 매우 간단 하 다. 예 를 들 어 너비, 투명도, 위 치 를 바 꾸 는 것 은 가장 자주 사용 하 는 몇 가지 형식 이다. 일 을 절약 하기 위해 통합 시 켰 기 때문에 다음 과 같은 것 이 있다.
호 환: IE 시리즈, chrome, fireforx, opera, Safari, 360...
/*

  javascript    

  

  Move.action(dom  ,json      ,     ,    )



    :
 var box = document.getElementById('Ele'); Move.action(box,{width:500,height:200,left:200,top:100,marginLeft:10,opacity:.5},5,function(){ console.log('end'); });
*/ var Move = { version: '1.5', // isEmptyObject: function(obj) { for (var attr in obj) { return false; } return true; }, // CSS getStyle: function(obj, attr) { if (obj.currentStyle) { //IE return obj.currentStyle[attr]; } else { return getComputedStyle(obj, null)[attr]; } }, // action: function(obj, json, sv, callback) { _this = this; //obj if (_this.isEmptyObject(obj)) { return false; } // clearInterval(obj.timer); obj.timer = setInterval(function() { var isAllCompleted = true, // speed, // attrValue, // targetV; // for (attr in json) { attrValue = _this.getStyle(obj, attr); switch (attr) { case 'opacity': attrValue = Math.round((isNaN(parseFloat(attrValue)) ? 1 : parseFloat(attrValue)) * 100); speed = (json[attr] * 100 - attrValue) / (sv || 4); targetV = json[attr] * 100; break; default: attrValue = isNaN(parseInt(attrValue)) ? 0 : parseInt(attrValue); speed = (json[attr] - attrValue) / (sv || 4); targetV = json[attr]; } speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed); // ,isAllCompleted if (attrValue != targetV) { isAllCompleted = false; } switch (attr) { case 'opacity': { obj.style.filter = "alpha(opacity=" + (attrValue + speed) + ")"; obj.style.opacity = (attrValue + speed) / 100; }; break; default: obj.style[attr] = attrValue + speed + 'px'; } } // , (isAllCompleted=true) if (isAllCompleted) { clearInterval(obj.timer); if (typeof callback === 'function') { callback(); } } }, 30); } };

좋은 웹페이지 즐겨찾기