zoukankan      html  css  js  c++  java
  • jQuery:手機端可移動標題

    function touchTitle(obj,fun){            
        var startX=0,startY=0,moveX=0,moveY=0,endX=0,endY=0,changeX=0,changeY=0;
        var ele=obj.ele!==undefined?$(obj.ele):false;
        var length=obj.length!==undefined?obj.length:false;
        var fun=fun!==undefined?fun:false;
        var child=ele.children('li');
        var width=child.eq(0).width();
        var height=child.eq(0).outerHeight();            
        var len=child.length;
        ele.width(length*width);
        if(len>length){
            for (i=0;i<len;i++){            
                if (Math.floor(i/length)>0){
                    child.eq(i).css('margin-top',-height+'px');
                    child.eq(i).css('margin-left',i*width+'px');
                };
                child.eq(i).css('float','left');
            };
            ele.on('touchstart',function(e){                
                marginLeft=parseInt(ele.css('margin-left'));
                startX = e.originalEvent.changedTouches[0].pageX;
                startY = e.originalEvent.changedTouches[0].pageY;
            });
            ele.on('touchmove',function(e){
                moveX = e.originalEvent.changedTouches[0].pageX;
                moveY = e.originalEvent.changedTouches[0].pageY;
                changeX=moveX-startX;
                changeY=moveY-startY;
                if ((marginLeft>=0)&&(changeX>0)){
                        ele.css('margin-left',0);
                }else if ((marginLeft<=(length-len)*width)&&(changeX<0)){           
                    ele.css('margin-left',(length-len)*width);
                }else{
                    if (marginLeft+changeX>=0){                        
                          ele.css('margin-left',0);
                    }else if((marginLeft+changeX<=(length-len)*width)){
                        ele.css('margin-left',(length-len)*width);
                    }else{
                        ele.css('margin-left',marginLeft+changeX+'px');
                    };
                };
            });
            ele.on('touchend',function(e){
                endX = e.originalEvent.changedTouches[0].pageX;
                endY = e.originalEvent.changedTouches[0].pageY;
                if (changeX<0){
                    ele.marginLeft=(marginLeft-width)+'px';
                }
                if (changeX>0){
                    ele.marginLeft=(marginLeft+width)+'px';
                    marginLeft=parseInt(ele.css('margin-left'));
                };
            });
        };            
        if(fun!==false){fun();};
    };
  • 相关阅读:
    u-boot.lds分析
    u-boot的makefile中的一些目录的设定,以及涉及的shell,make语法。
    u-boot入门第一步,分析mkconfig
    uboot学习——Makefile里的echo使用!
    Linux下的打包与压缩和tar命令!
    关于undefined reference的问题
    JZ2440 编译Uboot1.1.6 undefined reference to ‘raise’
    POJ 1094 Sorting It All Out
    链式前向星
    Codeforces Round #197 (Div. 2) A~D
  • 原文地址:https://www.cnblogs.com/mandongpiaoxue/p/7642011.html
Copyright © 2011-2022 走看看