总结-前端开发常用简单的js方法

在开发过程中进场用到总结出来的一些方法,手机整理,希望能给大家带来帮助,如有错误,欢迎指正。


/*验证手机号码*/

function isTelNum(str){
    var _tel = $.trim(str),
        _reg = /^0?1[3|4|5|6|7|8|9][0-9]\d{8}$/;
    return _reg.test(_tel);
};

/*验证邮件地址*/
function isEmail (value, target) {
     value = value.trim();
     if (!/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(value)) {
         target.val("");
        return true;
     }
 }

//匹配身份证(15位或18位)   
function isidcard(str) {  
    var result = str.match(/\d{15}|\d{18}/);  
    if (result == null) return false;  
    return true;  
}  

//判断是否移动设备访问  
function isMobileUserAgent() {  
    return (/iphone|ipod|android.*mobile|windows.*phone|blackberry.*mobile/i.test(window.navigator.userAgent.toLowerCase()));  
}  

/*
*移动端简单监听滑动方向方法
*/
// 返回角度
function GetSlideAngle(dx, dy) {
    return Math.atan2(dy, dx) * 180 / Math.PI;
}

//根据起点和终点返回方向 1:向上,2:向下,3:向左,4:向右,0:未滑动
function GetSlideDirection(startX, startY, endX, endY) {
    var dy = startY - endY;
    var dx = endX - startX;
    var result = 0;

    //如果滑动距离太短
    if(Math.abs(dx) < 50 && Math.abs(dy) <50) {
        return result;
    }

    var angle = GetSlideAngle(dx, dy);
    if(angle >= -45 && angle < 45) {
        result = 4;
    }else if (angle >= 45 && angle < 135) {
        result = 1;
    }else if (angle >= -135 && angle < -45) {
        result = 2;
    }
    else if ((angle >= 135 && angle <= 180) || (angle >= -180 && angle < -135)) {
        result = 3;
    }

    return result;
}

function touchMove() {
    //滑动处理
    var startX, startY;
    var a = document.getElementById("room_img")? document.getElementById("room_img"):document;
    a.addEventListener('touchstart',function (ev) {
        startX = ev.touches[0].pageX;
        startY = ev.touches[0].pageY;
    }, false);
    a.addEventListener('touchend',function (ev) {
        var endX, endY;
        endX = ev.changedTouches[0].pageX;
        endY = ev.changedTouches[0].pageY;
        var direction = GetSlideDirection(startX, startY, endX, endY);
        switch(direction) {
            case 0:
                // alert("没滑动");
                break;
            case 1:
                console.log("向上");
                break;
            case 2:
                console.log("向下");
                break;
            case 3:
                console.log("向左");
                break;
            case 4:
                console.log("向右");
                break;
            default:
        }
    }, false);
}

/*获取url参数*/
function GetQueryString(name)
{
    var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
    var r = window.location.search.substr(1).match(reg);
    if(r!=null)return  unescape(r[2]); return null;
}

/*输入框焦点获取和失去时显示默认文字*/
function input_focus (inputId) {
   $(inputId).bind({
        focus:function(){
            if (this.value == this.defaultValue){
                this.value="";
            }
        },
        blur:function(){
            if (this.value == ""){
                this.value = this.defaultValue;
            }
        }
    });
}

/*阻止事件冒泡*/
function stopEvent(event){ 
    //取消事件冒泡
    var e=arguments.callee.caller.arguments[0]||event; //若省略此句,下面的e改为event,IE运行可以,但是其他浏览器就不兼容
    if (e && e.stopPropagation) {
        // this code is for Mozilla and Opera
        e.stopPropagation();
    } else if (window.event) {
        // this code is for IE
        window.event.cancelBubble = true;
    }
}

//写cookies
function setCookie(c_name,value,expiredays)
{
    var exdate=new Date();
    exdate.setDate(exdate.getDate()+expiredays);
    document.cookie=c_name+ "=" +escape(value)+
        ((expiredays==null) ? "" : ";expires="+exdate.toGMTString())
}

//读cookie
function getCookie(c_name)
{
    if (document.cookie.length>0)
    {
        c_start=document.cookie.indexOf(c_name + "=");
        if (c_start!=-1)
        {
            c_start=c_start + c_name.length+1;
            c_end=document.cookie.indexOf(";",c_start);
            if (c_end==-1) c_end=document.cookie.length;
            return unescape(document.cookie.substring(c_start,c_end))
        }
    }
    return ""
}

/*仿原生app滑动切换*/

//html结构
// 

//     

//         

    //         

//     

//


//css样式
// .focus_map { height: 3.2rem; position: relative; overflow: hidden; }
// .focus_map .border { height: 100%; width: 100%; overflow: hidden; }
// .focus_map ul { width: 200rem; height: 100%; }
// .focus_map li { width: 7.5rem; height: 100%; overflow: hidden; -webkit-overflow-scrolling: touch; }
// .focus_map img { width: 100%; vertical-align: middle; }
// .focus_map nav { position: absolute; left: 0; bottom: .15rem; width: 100%; text-align: center; }
// .focus_map nav i { display: inline-block; margin: 0 .1rem; border-radius: 50%; width: .16rem; height: .16rem; border-radius: .25rem; background: #bbbbbb; }
// .focus_map nav i.cur { background: #1f80b8; }

function focusbind(){

    //对象&变量 缓存
    var $tab = $("#tabs"),
        $ul = $tab.find("ul"),
        $li = $ul.children(),
        $nav = $("

你可能感兴趣的:(前端文档)