一些簡(jiǎn)單而實(shí)用的小函數(shù)

//判斷是否在微信中

function isWeixin(){
    var ua = window.navigator.userAgent.toLowerCase();
    if(ua.match(/MicroMessenger/i) == 'micromessenger'){
        return true;
    }else{
        return false;
    }
}

//判斷是android還是ios

var u = navigator.userAgent;
var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android終端
var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios終端

if(isAndroid){
    //是Android
}else if(isiOS){
    //是ios
};

//隨機(jī)數(shù);

function ran(n,m){
    return parseInt(Math.random()*(m-n)+n)
}

//如果小于10在前面加個(gè)0;

function parIt(n){
    if(n<10){
        return '0'+n
    }else{
        return n+'';
    }
    
}

//查看是否有重復(fù);

function findInArr(a,arr){
    for(var i=0;i<arr.length;i++){
        if(a==arr[i]){
            alert('重復(fù)了')
            return true;
        }
    }
}

//獲取生效(非行間樣式)的樣式

function getStyle(obj,sName){
    return (obj.currentStyle || getComputedStyle(obj,false))[sName]
}

//封裝事件函數(shù) window.onload解決辦法

function addEvent(obj,sEv,fn){
    if(obj.addEventListener){
        obj.addEventListener(sEv,fn,false);
    }else{
        obj.attachEvent('on'+sEv,fn);
    }
}

//滾輪事件判定;

function addWheel(obj,fn){
        //加滾輪事件
        if(navigator.userAgent.toLowerCase().indexOf('firefox')!=-1){
            obj.addEventListener('DOMMouseScroll',wheel,false)
        }else{
            obj.onmousewheel=wheel;
        }

        function wheel(ev){
            //我需要一個(gè)正確的滾輪方向(想知道用戶到底是向上還是向下)
            var bDown=true;
            var oEvent=ev||event;
            //oEvent.wheelDelta  oEvent.detail
            if(oEvent.wheelDelta){
                if(oEvent.wheelDelta>0){
                    bDown=false;
                }else{
                    bDown=true;
                }
            }else{
                //火狐
                if(oEvent.detail>0){
                    bDown=true;
                }else{
                    bDown=false;
                }
            }
            fn&&fn(bDown);
            oEvent.preventDefault&&oEvent.preventDefault();//阻止事件綁定中的默認(rèn)事件 此方法不支持IE9以下
            return false //在事件綁定中失效;
        }
        
}

/*addWheel(document,function(bDown){
    if(bDown){
        alert('向下')
    }else{
        alert('向上')
    }
})*/

//cookie調(diào)用 添加 刪除 獲取

//存cookie
function setCookie(sName,sValue,iDay){
    if(iDay){
        var oDate=new Date();
        oDate.setDate(oDate.getDate()+iDay);
        document.cookie=sName+'='+sValue+';expires='+oDate+';path=/';
    }else{
        document.cookie=sName+'='+sValue+';path=/';
    }
}

//獲取讀取cookie

function getCookie(sName){
    var str=document.cookie;
    var arr=str.split(';');
    for(var i=0;i<arr.length;i++){
        var arr2=arr[i].split('=');
        if(arr2[0]==sName){
            return arr2[1];
        }
    }
    return '';
}

//刪除cookie

function removeCookie(sName){
    setCookie(sName,'',-1);
}

//ajax調(diào)用函數(shù)

//解析json
function parseJson(str){
    try{
        return JSON.parse(str);
    }catch(e){
        return eval('('+str+')');
    }
}

//時(shí)間戳轉(zhuǎn)化時(shí)間

function time2date(t){
    function toDub(n){
        return n<10?'0'+n:''+n;
    }
    var oDate=new Date();
    oDate.setTime(t*1000);//設(shè)置一個(gè)時(shí)間戳
    return oDate.getFullYear()+'-'+(oDate.getMonth()+1)+'-'+oDate.getDate()+''+toDub(oDate.getHours())+':'+toDub(oDate.getMinutes())+':'+toDub(oDate.getSeconds());
}

//封裝jsonP

function jsonP(url,data){
    //jsonP使用方法
        //jsonP('https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su',{wd:oT1.value,cb:'show'});
    var oS=document.createElement('script');//創(chuàng)建一個(gè)script
    var arr=[];
    for(var name in data){
        arr.push(name+'='+encodeURIComponent(data[name]));
    }
    var sData=arr.join('&');//把data轉(zhuǎn)化為字符串
    oS.src=url+'?'+sData;//拼接
    document.head.appendChild(oS);//插入到父級(jí)中;
}

//移動(dòng)端拖拽

function drag(oDiv){
    var x=0;
    var y=0;
    oDiv.addEventListener('touchstart', function(ev){
    var id= ev.targetTouches[0].identifier;
    var disX= ev.targetTouches[0].pageX - x
    var disY= ev.targetTouches[0].pageY - y;
    function fnMove(ev){
        if(ev.targetTouches[0].identifier==id){
            x=ev.targetTouches[0].pageX - disX;
            y=ev.targetTouches[0].pageY - disY;
            oDiv.style.transform='translate('+x+'px,'+y+'px)';
        }
    }
    function fnEnd(ev){
        if(ev.changedTouches[0].identifier==id){
            document.removeEventListener('touchmove',fnMove, false);
            document.removeEventListener('touchend', fnEnd, false);
        }
    }
    document.addEventListener('touchmove',fnMove, false);
    document.addEventListener('touchend', fnEnd, false);
    ev.preventDefault();        //事件綁定用的阻止默認(rèn)事件;
    }, false)
}
//調(diào)用
//drag(oDiv)

//移動(dòng)端輪播圖

function drag(oDiv,aLi){
    var x=0;
    var iNow=0;
oDiv.addEventListener('touchstart', function(ev){
    var id= ev.targetTouches[0].identifier;
    var disX= ev.targetTouches[0].pageX - x
    var downX=ev.targetTouches[0].pageX;
    function fnMove(ev){
        if(ev.targetTouches[0].identifier==id){
            x=ev.targetTouches[0].pageX - disX;
            oDiv.style.transform='translateX('+x+'px)';
        }
    }
    function fnEnd(ev){
        if(ev.changedTouches[0].identifier==id){
            document.removeEventListener('touchmove',fnMove, false);
            document.removeEventListener('touchend', fnEnd, false);
            oDiv.style.transition='1s all linear';
            var upX=ev.changedTouches[0].pageX;
            if(Math.abs(upX-downX)>50){
                if(upX-downX<0){
                    iNow++;
                    if(iNow==4){
                        iNow=3;
                    }
                }else{
                    iNow--;
                    if(iNow==-1){
                        iNow=0;
                    }
                }
            }
            oDiv.style.transform='translateX('+-iNow*aLi.offsetWidth+'px)';
            oDiv.addEventListener('transitionend',function(){
                oDiv.style.transition='none';
                x=-iNow*aLi.offsetWidth;
            },false);
            
        }
    }
        document.addEventListener('touchmove',fnMove, false);
        document.addEventListener('touchend', fnEnd, false);
        ev.preventDefault();        //事件綁定用的阻止默認(rèn)事件;
    }, false)
};
  document.addEventListener('DOMContentLoaded',function(){
    var oUl=document.querySelector('#box ul');
    var aLi=oUl.children;
    drag(oUl,aLi[0]);
},false);

//弧度轉(zhuǎn)化為角度

function a2d(n){   
    return n*180/Math.PI;
}
//1π=180°

//角度轉(zhuǎn)化為弧度

function d2a(n){
    return n*Math.PI/180;
}

//查找最大值

var iMax = Math.max.apply(null,obj);
var aHeight = [];
for(var i = 0;i<arr.length;i++){
    aHeight[i] = obj[i]/iMax*oC.height;
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市幢妄,隨后出現(xiàn)的幾起案子刨摩,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,284評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡春瞬,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)套啤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)宽气,“玉大人,你說(shuō)我怎么就攤上這事∧ㄖ瘢” “怎么了线罕?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,614評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵止潮,是天一觀的道長(zhǎng)窃判。 經(jīng)常有香客問(wèn)我,道長(zhǎng)喇闸,這世上最難降的妖魔是什么袄琳? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,671評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮燃乍,結(jié)果婚禮上唆樊,老公的妹妹穿的比我還像新娘。我一直安慰自己刻蟹,他們只是感情好逗旁,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著舆瘪,像睡著了一般片效。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上英古,一...
    開(kāi)封第一講書(shū)人閱讀 51,562評(píng)論 1 305
  • 那天淀衣,我揣著相機(jī)與錄音,去河邊找鬼召调。 笑死膨桥,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的唠叛。 我是一名探鬼主播只嚣,決...
    沈念sama閱讀 40,309評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼艺沼!你這毒婦竟也來(lái)了介牙?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,223評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤澳厢,失蹤者是張志新(化名)和其女友劉穎环础,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體剩拢,經(jīng)...
    沈念sama閱讀 45,668評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡线得,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了徐伐。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片贯钩。...
    茶點(diǎn)故事閱讀 39,981評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出角雷,到底是詐尸還是另有隱情祸穷,我是刑警寧澤,帶...
    沈念sama閱讀 35,705評(píng)論 5 347
  • 正文 年R本政府宣布勺三,位于F島的核電站雷滚,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏吗坚。R本人自食惡果不足惜祈远,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望商源。 院中可真熱鬧车份,春花似錦、人聲如沸牡彻。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,904評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)庄吼。三九已至缎除,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間霸褒,已是汗流浹背伴找。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,023評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留废菱,地道東北人技矮。 一個(gè)月前我還...
    沈念sama閱讀 48,146評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像殊轴,于是被迫代替她去往敵國(guó)和親衰倦。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,139評(píng)論 25 707
  • 從三月份找實(shí)習(xí)到現(xiàn)在旁理,面了一些公司樊零,掛了不少,但最終還是拿到小米孽文、百度驻襟、阿里、京東芋哭、新浪沉衣、CVTE、樂(lè)視家的研發(fā)崗...
    時(shí)芥藍(lán)閱讀 42,247評(píng)論 11 349
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫(kù)减牺、插件豌习、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,103評(píng)論 4 62
  • 差不多正午12點(diǎn)到的三亞(中途在湖北宜昌停了半個(gè)小時(shí)存谎,畢業(yè)前曾在此實(shí)習(xí),爬山摘柚子肥隆,美好記憶)既荚,一下飛機(jī),一股濕熱...
    嫻時(shí)間閱讀 171評(píng)論 0 2
  • 青春是美好的栋艳,每個(gè)處于這種年齡的人都免不了一些迷茫恰聘。但我們不能以這為借口來(lái)虛度光陰。 ...
    吟游淺唱詩(shī)人閱讀 138評(píng)論 0 0