JS对URL编码 :encodeURI()

.Net对URL解码:HttpUtility.UrlDecode()

格式化输出百分数

function formatePercent(data){
            if (data != undefined && !isNaN(data))
            {
               data=Number(data)*100;
               return data.toFixed(2)+"%";
            }
           return "";
        }

阻止事件冒泡

function stopBubble(e) {
    // 如果提供了事件对象,则这是一个非IE浏览器
    if (e && e.stopPropagation)
    // 因此它支持W3C的stopPropagation()方法
        e.stopPropagation();
    else
    // 否则,我们需要使用IE的方式来取消事件冒泡
        window.event.cancelBubble = true;
}

//获取dom元素css样式值
function getStyle(dom,attr){
    if(window.getComputedStyle){
      return window.getComputedStyle(dom,false)[attr];
    }else{
      //兼容IE
      return dom.currentStyle[attr];
    }
 }

事件句柄
e || window.event
光标坐标
e.clientX || e.pageX

HtmlCollection转数组
var arry = [].slice.call(lisDom);

function getXY(e){
    var ev = e || window.event;
    //坐标的获取
    //ie678 pageX pageY (包含滚动条的scrollLeft  和scrollTop)
    //ie9+ clientX  clientY (不包含滚动条的scrollLeft  和scrollTop)
    var x=0,y=0;
    if(ev.pageX){
        x = ev.pageX;
        y = ev.pageY;
    }else{
        //拿到scrollTop 和scrollLeft
        var sleft = 0,stop = 0;
        //ie678---
        if(document.documentElement){
            stop =document.documentElement.scrollTop;
            sleft = document.documentElement.scrollLeft;
        }else{
        //ie9+ 谷歌
            stop = document.body.scrollTop;
            sleft = document.body.scrollLeft;
        }    
        x = ev.clientX + sleft;
        y = ev.clientY + stop;
    }
    return {x:x,y:y};
};

// IE 687               IE9
// attachEvent()        addEventListener()
//detachEvent()         removeEventListener()
// e.srcElement         e.target
//cancleBubble(true)    e.stopPropagation()
//return false          e.preventDefault()

//添加事件
function setEvent(dom,type,callback){
    if(document.addEventListener){
        dom.addEventListener(type,callback,false);
    }else if(document.attachEvent){
        dom.attachEvent("on"+type,callback,false);
    }else{
        dom["on"+type]=callback;
    }
}
        
//移除事件
function offEvent(dom,type,callback){
    if(dom.removeEventListener){
        dom.removeEventListener(type,callback);
    }else if(document.detachEvent){
        dom.detachEvent("on"+type,callback);
    }else {
        delete dom["on"+type];
    }
}
        
//阻止浏览器默认行为
function offDefault(e){
    if(event.preventDefault){
        return e.preventDefault();
    }else{
        e.returnValue=false;
    }
}
        
//阻止事件冒泡
function stopEvent(e){
    if(e.stopPropagation){
        e.stopPropagation();
    }else{
        e.cancelBubble=true;
    }
}

//混入
function mix (target,source){
//arguments:类数组---它有数组的长度,下标,但不能调用数组的sort push reverse
    var args = [].slice.call(arguments);
    var i = 1;
    if(args.length == 1){
        return target;
    };
    while((source = args[i++])){
        for(var key in source){
            target[key] = source[key];//混入代码
        }
    }
    return target;
}

//js关闭当前窗口,避免弹出提示框

window.opener=null;
  window.open('','_self');
  window.close();

JsJquery小技巧的更多相关文章

  1. 前端网络、JavaScript优化以及开发小技巧

    一.网络优化 YSlow有23条规则,中文可以参考这里.这几十条规则最主要是在做消除或减少不必要的网络延迟,将需要传输的数据压缩至最少. 1)合并压缩CSS.JavaScript.图片,静态资源CDN ...

  2. Git小技巧 - 指令别名及使用Beyond Compare作为差异比较工具

    前言 本文主要写给使用命令行来操作Git的用户,用于提高Git使用的效率.至于使用命令还是GUI(Tortoise Git或VS的Git插件)就不在此讨论了,大家根据自己的的喜好选择就好.我个人是比较 ...

  3. 分享两个BPM配置小技巧

    1.小技巧 流程图修改后发布的话版本号会+1,修改次数多了之后可能会导致版本号很高,这个时候可以将流程导出,然后删除对应的流程包再导入,发布数据模型和流程图之后,版本清零 2.小技巧 有的同事入职后使 ...

  4. linux系统维护时的一些小技巧,包括系统挂载新磁盘的方法!可收藏!

    这里发布一些平时所用到的小技巧,不多,不过会持续更新.... 1.需要将history创建硬链接ln 全盘需要备份硬链接 ln /etc/xxx /home/xxx 2.root用户不可以远程 /et ...

  5. JS处理事件小技巧

    今天,就分享一下我自己总结的一些JS的小技巧: ①防止鼠标选中事件 <div class="mask" onselectstart="return false&qu ...

  6. iOS:小技巧(不断更新)

    记录下一些不常用技巧,以防忘记,复制用. 1.获取当前的View在Window的frame: UIWindow * window=[[[UIApplication sharedApplication] ...

  7. css小技巧(1)

    1.-webkit-overflow-scrolling: touch; 解决ios滑动时无缓冲问题 2.::-webkit-scrollbar 设置ios滑动时是否显示滚动条 3.::selecti ...

  8. 最强 Android Studio 使用小技巧和快捷键

    写在前面 本文翻译自 Android Studio Tips by Philippe Breault,一共收集了62个 Android Studio 使用小技巧和快捷键. 根据这些小技巧的使用场景,本 ...

  9. ios开发中的小技巧

    在这里总结一些iOS开发中的小技巧,能大大方便我们的开发,持续更新. UITableView的Group样式下顶部空白处理 //分组列表头部空白处理 UIView *view = [[UIViewal ...

随机推荐

  1. javascript表单验证的例子

    function checkUsername(){ //对username的内容进行验证. //要求:首字符是字母或下划线,其他由下划线字母数字组成,共4-20位 var inputOb=docume ...

  2. delphi 内存映射

    使用内存映射文件读写大文件 使用内存映射文件读写大文件 文件操作是应用程序最为基本的功能之一,Win32 API和MFC均提供有支持文件处理的函数和类.一般来说,这些函数可以满足大多数场合的要求,但是 ...

  3. Hbase的rowkey设计

    HBase的rowKey设计技巧 1.设计宗旨与目标 主要目的就是针对特定的业务模型,按照rowKey进行预分区设计,使之后面加入的数据能够尽可能的分散于不同的rowKey中.比如复合RowKey. ...

  4. Hbase的读写流程

    HBase读写流程 1.HBase读数据流程 HRegionServer保存着meta表以及表数据,要访问表数据,首先Client先去访问zookeeper,从zookeeper里面获取meta表所在 ...

  5. NOIp2018集训test-10-19 (bike day5)

    Bike老爷问了好几天到底要怎样简单的题目你们才能AK啊终于在他每天降难度直到要走了才出了一套我们能AK的题.虽然前几天的题换成llj肯定随便AK. 其实最近有点方虽然通常最后都写完了把该拿的分拿了该 ...

  6. Hdu-4757 Tree(可持久化字典树+lca)

    题目链接:点这 我的github地址:点这     Problem Description   Zero and One are good friends who always have fun wi ...

  7. ASP.NET Core学习——3

    中间件 中间件是用于组成应用程序管道来处理请求和相应的组件.管道内的每一个组件都可以选择是否将请求交给下一个组件,并在管道中调用下一个组件之前和之后执行某些操作.请求委托被用来建立请求管道,请求委托处 ...

  8. Linux文件大小 指令&编程

    在工作和日常的编程中时常需要确定文件的大小,一些基本的查看方式在此做一个总结. 一. linux shell环境下 df可以查看一级文件夹大小.使用比例.档案系统及其挂入点,但对文件却无能为力.    ...

  9. 3. Python基础语法

    注释 我们在文言文中经常会看到注释,注释可以帮助读者对文章的理解.代码中的注释也是一样,优秀的代码注释可以帮助读者对代码的理解.当然在代码编写过程中,注释的使用不一定只是描述一段代码,也可能的是对代码 ...

  10. docker mysql 命令导入sql数据文件

    1.查看mysql容器 docker ps 比如我的是:94df84cbaaaa 2.复制sql文件到docker mysql里面的tmp文件夹 docker cp ./admin.sql 94df8 ...