zoukankan      html  css  js  c++  java
  • 基础运动move.js

    /*
    * 事件绑定
    */
    function myAddEvent(obj,ev,fn){
    if(obj.attachEvent){
    obj.attachEvent('on' + ev,fn);
    }else{
    obj.addEventListener(ev,fn,false);
    }
    }
    /*
    * 获取样式值
    */
    function getStyle(obj, name) {
    if(obj.currentStyle) {
    return obj.currentStyle[name];
    } else {
    return getComputedStyle(obj, false)[name];
    }
    }
    
    /*
    * 缓冲运动特效函数
    */
    function startMove(obj, attr, iTarget) {
    clearInterval(obj.timer);
    obj.timer = setInterval(function() {
    var cur = 0;
    if(attr == 'opacity') {
    cur = Math.round(parseFloat(getStyle(obj, attr)) * 100);
    } else {
    cur = parseInt(getStyle(obj, attr));
    }
    var speed = (iTarget - cur) / 6;
    speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed);
    if(cur == iTarget) {
    clearInterval(obj.timer);
    } else {
    if(attr == 'opacity') {
    obj.style.filter = 'Alpha(opacity:' + (cur + speed) + ')';
    obj.style.opacity = (cur + speed) / 100;
    
    document.getElementById('txt1').value = obj.style.opacity;
    } else {
    obj.style[attr] = cur + speed + 'px';
    }
    }
    }, 30);
    }
    /*
    * 完美缓冲运动特效函数
    */
    function startMove1(obj, json, fnEnd) {
    clearInterval(obj.timer);
    obj.timer = setInterval(function() {
    var bStop = true; //假设所有的值都已经到了
    for(var attr in json){
    var cur = 0;
    if(attr == 'opacity') {
    cur = Math.round(parseFloat(getStyle(obj, attr)) * 100);
    } else {
    cur = parseInt(getStyle(obj, attr));
    }
    var speed = (json[attr] - cur) / 6;
    speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed);
    
    if(cur != json[attr]){
    bStop = false;
    }
    
    if(attr == 'opacity') {
    obj.style.filter = 'Alpha(opacity:' + (cur + speed) + ')';
    obj.style.opacity = (cur + speed) / 100;
    
    document.getElementById('txt1').value = obj.style.opacity;
    } else {
    obj.style[attr] = cur + speed + 'px';
    }
    }
    
    if(bStop){
    clearInterval(obj.timer);
    if(fnEnd){
    fnEnd();
    }
    }
    }, 30);
    }
  • 相关阅读:
    (转)DirectInput编程基础
    怎么样解决3D 地形、天空盒等网格模型出现缝隙的问题
    D3DLIGHT9光源
    D3DXCreateTextureFromFileEx
    CreateVertexBuffer和CreateIndexBuffer
    D3D中材质通过D3DMATERIAL9结构说明
    IDirect3DVertexBuffer9::Lock和IDirect3DIndexBuffer9::Lock
    D3DPRESENT_PARAMETERS_结构(D3D初始化)(
    Windows Phone开发(6):处理屏幕方向的改变
    Windows Phone开发(4):框架和页
  • 原文地址:https://www.cnblogs.com/panda-ling/p/6699820.html
Copyright © 2011-2022 走看看