美文网首页
日常封装函数

日常封装函数

作者: starjw | 来源:发表于2017-09-25 15:23 被阅读0次

// 选项卡封装函数

function tab (id,event,time,isCarrousel) {

// id: 父元素的id值

// event: 事件

// isCarrousel: 值为carrousel,就是自动播放

// time: 延迟的时间

    var oBox1 = document.getElementById(id);

    // 第一个子元素

   var oTab = oBox1.children[0];

    var aBtn1 = oTab.children;

    // 第二个子元素

    var oCon = oBox1.children[1];

    var aDiv1 = oCon.children;

    //下标

    var count = 0;

    // 延迟调用的timer;

    var timer;

     for (var i = 0;i < aBtn1.length;i++) {

        aBtn1[i].index = i;

        //添加事件的地方

        aBtn1[i][event] = function () {

        // 点击的时候,立马切换,onclick

        // 鼠标移入的时候,隔500毫秒,onmouseover

            if (event == 'onclick') {

                count = this.index;

                tab1();

            } else {

                //将this的值赋值给_this

                var _this = this;

                timer = setTimeout(function (){

                    // this -- > btn

                    count = _this.index;

                    tab1();

                },time);

            }

        }

       aBtn1[i].onmouseout = function () {

           clearTimeout(timer);

       }

}

if (isCarrousel == 'carrousel') {

    //自动播放

     var tid = setInterval(nextImg,1000);

     oBox1.onmouseover = function () {

           clearInterval(tid);

     }

     oBox1.onmouseout = function () {

         clearInterval(tid);

         tid = setInterval(nextImg,1000);

      }

     function nextImg () {

          count++;

           if (count == aBtn1.length) {

               count = 0;

           }

           tab1();

        }

    }

     //切换选项卡

     function tab1 () {

      //先清空所有的样式

       //先清空所有的样式

         for (var j = 0;j < aBtn1.length;j++) {

             aBtn1[j].className = '';

             aDiv1[j].style.display = 'none';

        }

       console.log(count);

      // 0 1 2 3

      // count = undefined

      // aBtn1[count]: 获取不到button

        aBtn1[count].className = 'active';

         aDiv1[count].style.display = 'block';

    }

}

// 判断数组里面是否有哪个值

function isFindInArr (arr,value) {

    for (var i = 0;i < arr.length;i++) {

        if (arr[i] == value) {

            return true;

        }

    }

    return false;

}

//设置样式属性

function setStyle (obj,json) {

    for (var key in json) {

        obj.style[key] = json[key];

    }

}

//数组排序去重

arr.sort(function (n1,n2){

    return n2 - n1;

})

for (var i = 0;i < arr.length;i++) {

    if (arr[i] == arr[i+1]) {

        arr.splice(i,1);

        i--;

    }

}

//求随机数

function random (n,m) {

        return parseInt(Math.random() * (m - n) + n);

}

// 求和函数

function sum (arr) {

     var sum1 = 0;

    for (var i = 0;i < arr.length;i++) {

        sum1 = sum1 + arr[i];

    }

    return sum1;

}

//判断浏览器

function browser(){

    if (navigator.userAgent.indexOf('Chrome') != -1) {

        return '谷歌浏览器';

    } else if (navigator.userAgent.indexOf('Firefox') != -1) {

        return '火狐浏览器'

    } else if (navigator.userAgent.indexOf('IE') != -1) {

        return 'IE浏览器';

    }

}

相关文章

网友评论

      本文标题:日常封装函数

      本文链接:https://www.haomeiwen.com/subject/exhdextx.html