zoukankan      html  css  js  c++  java
  • js助手函数

    ajax二次封装

        var _ajax = function (opt) {
            var defaultOption = {
                type: "POST",
                data: { "key": _const.TOKEN },
                dataType: 'JSON',
                cache: false,
                error: function (xhr) {
                    console.info(xhr);
                }
    
            };
            for (key in opt) {
                if (key === "data") {
                    for (dataKey in opt["data"]) {
                        defaultOption["data"][dataKey] = opt["data"][dataKey];
                    }
                }
                else {
                    defaultOption[key] = opt[key];
                }
            }
            return $.ajax(defaultOption);
        };

    错误重试,如果要执行的函数返回false,就重新执行。(在代码中因为要用到异步,当一个异步依赖另一个异步返回的数据时,偶尔会出现数据不同步,所以需要错误重试)

    function retry(func,millSeconds,maxCount){/*millSeconds:间隔时间,maxCount:最大循环次数*/
    
        if(func()===false){
            if (--maxCount>0) {
                window.setTimeout(function(){
                    retry(func,millSeconds,maxCount);
                },millSeconds);
            }
        }
    }
    
    //调用
    retry(function(){
       //如果需要重试,返回false
        return false;
    },1500,3)

     页面加载完成事件,相当于jQuery.ready():

                function addOnloadEvent(fnc) {
                    if (typeof window.addEventListener != "undefined")
                        window.addEventListener("load", fnc, false);
                    else if (typeof window.attachEvent != "undefined") {
                        window.attachEvent("onload", fnc);
                    }
                    else {
                        if (window.onload != null) {
                            var oldOnload = window.onload;
                            window.onload = function (e) {
                                oldOnload(e);
                                window[fnc]();
                            };
                        }
                        else {
                            window.onload = fnc;
                        }
                    }
                }
    //调用
                addOnloadEvent(function(){
                    console.info("load success");
                });
  • 相关阅读:
    关于MFC库和CRT库冲突的分析
    C++ Traits技术
    C/C++的参数传递机制
    C++与正态分布
    前端JavaScript
    python 前端 css
    python 前端 html
    MySQL 数据库
    网络编程 生产者消费者模型 GiL

  • 原文地址:https://www.cnblogs.com/fanfan-90/p/12789063.html
Copyright © 2011-2022 走看看