随机颜色、数组去重等函数方法的封装

76 阅读1分钟
var Tools = (function () {
    //1.随机颜色
    function randomColor() {
        var str = "#"
        for (var i = 0; i < 6; i++) {
            str += parseInt(Math.random() * 16).toString(16);
        }
    }
    //2.随机生成范围的值
    function randomNumber() {
        var max = n > m ? n : m
        var min = n < m ? n : m
        return parseInt(Math.random() * (max - min + 1)) + min
    }

    //数组去重
    function noRepeat(arr) {
        var newArr = [];
        for (var i = 0; i < arr.length; i++) {
            if (newArr.indexOf(arr[i]) == -1){
                newArr.push[arr[i]];
            }
        }
        return newArr;
    }
    //获取样式
    function getStyle(ele, attr) {
        if (window.getComputedStyle) {
            return window.getComputedStyle(ele, null)[attr];
        }
        return ele.currentStyle[attr];
    }


    //获取到body的距离
    function offset(ele) {
        var o = {
            left: ele.offsetLeft,
            top: ele.offsetTop,
        }

        while (ele.offsetParent) {
            ele = ele.offsetParent
            o.left += ele.offsetLeft
            o.top += ele.offsetTop
        }
        return o;
    }

    return {
        randomColor: randomColor,
        randomNumber: randomNumber,
        noRepeat: noRepeat,
        getStyle: getStyle,
        offset: offset,
    };
})();