3d旋转动画

<style>
        body {
            height: auto !important;
            background-color: #020432;
        }
        html{
            height: auto !important
        }

        .bgcolor{
            min-width: 1200px;
            height: auto !important;
            background-size: 100% 100%;
        }

        /*旋转部分、、、、、、、、、、、、、、、、、、、、、、、、、、*/
        .section3 {
            width: 100%;
            height: 800px;
            margin: 200px auto 0px;
            background: url(../img/mainImg/bg.png) no-repeat center;
            background-size: 100% 100%;
        }

        .u_p3d {
            -webkit-transform-style: preserve-3d;
            -ms-transform-style: preserve-3d;
            -o-transform-style: preserve-3d;
            -moz-transform-style: preserve-3d;
            transform-style: preserve-3d;
        }

        .section3 .ui_base {

            position: absolute;
            left: 50%;
            top: 100px;
            transform: translate(-50%, 300px);

            width: 400px;
            height: 0px;
            -webkit-perspective: 1000px;
            -moz-perspective: 1000px;
            -ms-perspective: 1000px;
            -o-perspective: 1000px;
            perspective: 1000px;
            -webkit-perspective-origin: 50% 0%;
            -moz-perspective-origin: 50% 0%;
            -o-perspective-origin: 50% 0%;
            -ms-perspective-origin: 50% 0%;
            perspective-origin: 50% 50%;
        }

        .section3 .ball_c {
            -webkit-transform-origin: 50% 50%;
            -moz-transform-origin: 50% 50%;
            -ms-transform-origin: 50% 50%;
            -o-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
            position: absolute;
            width: 225px;
            height: 157px;
            line-height: 157px;
            text-align: center;
            background: url(../img/zfzs.png) no-repeat;
            left: 90px;
            top: 100px;
        }

        .ball_c {}

        .section3 .ball_c img {
            width: 125px;
            height: 125px;
            border-radius: 10px;
        }

        .section3 .ball_c p {
            margin-top: -70px;
        }

        .section3 .ball_c p a {
            font-size: 19px;
            font-family: ""
        }

        .section3 .base {
            -webkit-transform: rotateX(80deg) rotateY(-10deg);
            -moz-transform: rotateX(80deg) rotateY(-10deg);
            -o-transform: rotateX(80deg) rotateY(-10deg);
            -ms-transform: rotateX(80deg) rotateY(-10deg);
            transform: rotateX(80deg) rotateY(-10deg);
            position: relative;
            width: 350px;
            height: 350px;
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
            top: -120px;
            left: 30px;
        }

        .section3 .ball_base {
            -webkit-transform-origin: 225px 0px;
            -moz-transform-origin: 225px 0px;
            -ms-transform-origin: 225px 0px;
            -o-transform-origin: 225px 0px;
            transform-origin: 225px 0px;
            position: absolute;
            top: 175px;
            left: -50px;
            width: 225px;
            height: 127px
        }

        .section3 .ball {
            display: flex;
            flex-direction: column;
            align-items: center;
            -webkit-transition: all 2s ease-out 0ms;
            -o-transition: all 2s ease-out 0ms;
            -moz-transition: all 2s ease-out 0ms;
            -ms-transition: all 2s ease-out 0ms;
            transition: all 2s ease-out 0ms;
            -webkit-transform-origin: 50% 50%;
            -o-transform-origin: 50% 50%;
            -ms-transform-origin: 50% 50%;
            -moz-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
            position: absolute;
            left: -250px;
            top: -60px;
            /* overflow: hidden; */
        }


        .section3 .ball .img {
            width: 100px;
            height: 100px;
        }

     
        @keyframes cir {
            0% {
                transform: rotateX(80deg) rotateY(0) rotateZ(0deg)
            }

            100% {
                transform: rotateX(80deg) rotateY(0) rotateZ(-360deg)
            }
        }

        @-webkit-keyframes cir {
            0% {
                -webkit-transform: rotateX(80deg) rotateY(0) rotateZ(0deg)
            }

            100% {
                -webkit-transform: rotateX(80deg) rotateY(0) rotateZ(-360deg)
            }
        }

        .spin_box_item {
            position: relative;
        }
        .spin_box_item .spin_box_item_img{
            display: flex;
            justify-content: center;
            align-items: center;
            width: 120px;
            height: 120px;
            border-radius: 50%;
        }
        .spin_box_item_img img{
            width: 50px;
            height: 50px;
        }

        .spin_box_item .spin_box_item_children {
            position: absolute;
            left: -250px;
            top: 0;
            /* overflow:inherit */
        }

        .spin_box_item .spin_box_item_children .corner {
            display: flex;
            justify-content: center;
            align-items: center;
            position: absolute;
            left: -20px;
            top: -20px;
            transform: translate(50%, 50%);
            width: 20px;
            height: 20px;
            border-radius: 50%;
            /* border: 1px solid #148460;
            background-color: rgba(5, 88, 87, .5); */
        }


        .spin_box_item .spin_box_item_children .corner .circle {
            width: 12px;
            height: 12px;
            border-radius: 50%;
            /* border: 1px solid #148460;
            background-color: rgba(5, 88, 87, .5); */
        }

        .spin_box_item .spin_box_item_children .content_box {
            padding: 8px;
            /* 实现四个边角切割 */
            clip-path: polygon(15px 0px, calc(100% - 20px) 0, 100% 0, 100% calc(100% - 29px), 				calc(100% - 29px) 100%, 0 100%, 0 calc(100% - 20px), 0 0);


        }

        .spin_box_item .spin_box_item_children .content_box ul {
 
            margin: 0;
            padding: 10px;
            clip-path: polygon(0% 0%, 80% 0%, 100% 0%, 100% 195px, 252px 100%, 0% 100%, 0% 80%, 0% 20%);
        }

        .spin_box_item .spin_box_item_children .content_box ul li {
            display: flex;
            align-items: center;
            padding: 5px 0;
            margin-left: 20px;
            margin-right: 20px;
        }

        .spin_box_item .spin_box_item_children .content_box ul li>div {
            width: 12px;
            height: 12px;

            border-radius: 50%;
            margin-right: 10px;
        }

        .spin_box_item .spin_box_item_children .content_box ul li a {}




        .display_block {
            display: block;
        }

        .display_none {
            display: none;
        }

        .qiu {
            position: absolute;
            left: 50%;
            /* top: 50%; */
            transform: translate(-42%, -76%);
            animation: yuan 5s linear 0s infinite
        }

        @keyframes yuan {
            0% {
                transform: translate(-46%, -76%)
            }

            50% {
                transform: translate(-46%, -66%)
            }

            100% {
                transform: translate(-46%, -76%)
            }
        }
        .guang{
 
            animation: cir11 20s linear 0s infinite;
            transform: rotateX(-90deg) rotateY(72deg) translateY(-70px)

        }

        @keyframes cir11 {
            0% {
                transform: rotateY(0deg) rotateZ(0)
            }

            100% {
                transform: rotateY(0) rotateZ(-360deg)
            }
        }

        @keyframes guang {
            0% {
                transform: rotateX(80deg) rotateY(0) rotateZ(0)
            }

            100% {
                transform: rotateX(80deg) rotateY(0) rotateZ(-360deg);

            }
        }
    </style>
<div class="section3">
      <div class="ui_base u_p3d">
          <div class="qiu">
              <img src="../img/mainImg/yuan.png" alt="">
          </div>
          <div class="base u_p3d" id="base">

          </div>
      </div>
  </div>

返回的数据

在这里插入图片描述

// var data = [{
    //     name: '其他',
    //     img: '../img/mainImg/icon5.png',
    //     // color: 'rgba(242,58,58)',
    //     lucency: '',
    //     children: [{
    //         name: '合同管理系统',
    //         path: 'http://www.baidu.com'
    //     }, {
    //         name: '档案资料管理系统',
    //         path: 'http://www.baidu.com'
    //     }]
    // }, {
    //     name: '安全部',
    //     img: '../img/mainImg/icon4.png',
    //     children: [{
    //         name: '合同管理系统',
    //         path: 'http://www.baidu.com'
    //     }, {
    //         name: '档案资料管理系统',
    //         path: 'http://www.baidu.com'
    //     }]
    // }, {
    //     name: '质检部',
    //     img: '../img/mainImg/icon3.png',
    //     children: [{
    //         name: '合同管理系统',
    //         path: 'http://www.baidu.com'
    //     }, {
    //         name: '档案资料管理系统',
    //         path: 'http://www.baidu.com'
    //     }]
    // }, {
    //     name: '工程部',
    //     img: '../img/mainImg/icon2.png',
    //     children: [{
    //         name: '合同管理系统',
    //         path: 'http://www.baidu.com'
    //     }, {
    //         name: '档案资料管理系统',
    //         path: 'http://www.baidu.com'
    //     }]
    // }, {
    //     name: '办公室',
    //     img: '../img/mainImg/icon1.png',
    //     color: 'rgb(33,208,120)',
    //     children: [{
    //         name: '合同管理系统',
    //         path: 'http://www.baidu.com'
    //     }, {
    //         name: '档案资料管理系统',
    //         path: 'http://www.baidu.com'
    //     }]
    // }]

    var base = document.getElementById('base')

    // 列表弹窗
    function ListShowFn(event) {
        var listBox = event.lastChild

        if (listBox.className.indexOf('display_none') != -1) {
            listBox.setAttribute('class', 'spin_box_item_children display_block')
            listBox.style = `left:${ -listBox.clientWidth - 10 }px`
            var ul = event.getElementsByClassName('ul')[0]
            var style = ul.getAttribute('style')
            ul.style = style + `clip-path:polygon(0% 0%, 80% 0%, 100% 0%, 100% ${ul.clientHeight - 25}px, ${ul.clientWidth - 25}px 100%, 0% 100%, 0% 80%, 0% 20%)`
        } else {
            listBox.setAttribute('class', 'spin_box_item_children display_none')
        }
    }
    // 动画停止与开始
    base.addEventListener('mouseenter', function () {
        this.style = 'animation-play-state: paused'
        for (var i = 0; i < this.children.length; i++) {
            this.children[i].children[0].style = this.children[i].children[0].getAttribute('style') + ';animation-play-state: paused'
        }
    })
    base.addEventListener('mouseleave', function () {
        this.style = 'animation-play-state: inherit'
        for (var i = 0; i < this.children.length; i++) {
            this.children[i].children[0].style = this.children[i].children[0].getAttribute('style') + ';animation-play-state: inherit'
        }
    })

    function colorFn(val){
        // 16进制颜色值的正则
        var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
        // 把颜色值变成小写
        var color = val.toLowerCase();
        if (reg.test(color)) {
            // 如果只有三位的值,需变成六位,如:#fff => #ffffff
            if (color.length === 4) {
                var colorNew = "#";
                for (var i = 1; i < 4; i += 1) {
                    colorNew += color.slice(i, i + 1).concat(color.slice(i, i + 1));
                }
                color = colorNew;
            }
            // 处理六位的颜色值,转为RGB
            var colorChange = [];
            for (var i = 1; i < 7; i += 2) {
                colorChange.push(parseInt("0x" + color.slice(i, i + 2)));
            }
            return "RGB(" + colorChange.join(",") + ")";
        } else {
            return color;
        }
    }

//请求后台接口
    $.ajax({
        type: "GET",
        url: "http://xxx.com",
        dataType: 'json',
        success: function(res) {

            var data = res

            var num = 360 / data.length
            var delay = 100

            var style = document.createElement('style');
            style.type = 'text/css';
            var styleVal = ''
            for(var i=0;i<data.length;i++) {
                styleVal += `
                     @keyframes cir${i + 1} {
                        0% {
                            transform: rotateY(-${num * i}deg) rotateZ(0)
                        }

                        100% {
                            transform: rotateY(-${(num * i) + 360}deg) rotateZ(0)
                        }
                    }`

            }

            style.innerHTML= styleVal
            document.getElementsByTagName('head').item(0).appendChild(style);


            var dom = ''

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

                // 没有bgColor 接收‘#365236’,不能写rgba(52,36,54,1)
                if (!data[i].bgColor) {
                    data[i].color = 'rgb(40,247,255)'
                }else {
                    data[i].color = data[i].bgColor
                }
                // if(data[i].color.indexOf('rgb') !== '-1'){
                //     data[i].color = data[i].color
                // }else {

                data[i].color = colorFn(data[i].color)
        



                // 颜色渲染
                if (data[i].color) {
                    var colorVal = data[i].color.split(',')[2]
                    var kuohao = colorVal.substr(colorVal.length - 1, 1)
                    data[i].bgc = data[i].color.split(',')[0] + ',' + data[i].color.split(',')[1] + ',' + colorVal.split(
                        ')')[0] + ',' + (data[i].lucency ? data[i].lucency : '0.5') + kuohao
                    data[i].bgcBor = data[i].color.split(',')[0] + ',' + data[i].color.split(',')[1] + ',' + colorVal.split(
                        ')')[0] + ',' + '0.05' + kuohao
                    data[i].bgcBorxiantao1 = data[i].color.split(',')[0] + ',' + data[i].color.split(',')[1] + ',' +
                        colorVal.split(')')[0] + ',' + '1' + kuohao
                    data[i].bgcBorxiantao2 = data[i].color.split(',')[0] + ',' + data[i].color.split(',')[1] + ',' +
                        colorVal.split(')')[0] + ',' + '0' + kuohao
                }
                // dom渲染
                delay += 200
                dom += `<div class="ball_base u_p3d ball_${i + 1}" style="cursor: pointer;transform:rotateX(-90deg) rotateY(${num * i}deg) translateY(-70px);">`
                dom += `<div class="ball spin_box_item" style="color:${data[i].color};transition-delay: ${delay}ms;animation: cir${i + 1} 28s linear 0s infinite;transform: rotateY(${num * i}deg) rotateZ(0)"  οnclick="ListShowFn(this)">`
                dom += `<div class="spin_box_item_img" style="background-color: ${data[i].bgc};border: 1px dashed ${data[i].color}">`
                dom += `<img src="${data[i].iconPath}"></img>`
                dom += `</div>`
                dom += `<p style="color:${data[i].color};margin-top: 10px;font-size: 18px">${data[i].name}</p>`
                dom +=
                    `<div style="width:4px;height:120px;background:linear-gradient(${data[i].bgcBorxiantao1} 0%, ${data[i].bgcBorxiantao2} 100%)"></div>`
                // 系统列表
                if (data[i].clientInfoVos) {
                    dom += `<div class="spin_box_item_children display_none">`
                    dom +=
                        `<div class="corner" style="border: 1px solid ${data[i].color};background-color: ${data[i].bgc}">`
                    dom +=
                        `<div class="circle" style="border: 1px solid ${data[i].color};background-color: ${data[i].bgc}"></div>`
                    dom += `</div>`
                    // background: linear-gradient(-45deg, #4C829A 20px, rgba(5, 28, 65, 0.05) 0) bottom right;
                    // clip-path:'${polygon(0% 0%, 80% 0%, 100% 0%, 100% 85px, 209px 100%, 0% 100%, 0% 80%, 0% 20%)}';
                    dom +=
                        `<div class="content_box" style="background: linear-gradient(-45deg, ${data[i].color} 20px, ${data[i].bgcBor} 0) bottom right;border: solid 1px ${data[i].color};box-shadow: 0 0 20px 10px ${data[i].color};">`
                    dom += `<ul class="ul" style="box-shadow: 0 0 20px 5px ${data[i].color} inset;">`
                    for (var j = 0; j < data[i].clientInfoVos.length; j++) {
                        dom +=
                            `<li style="color:${data[i].color}"><div style="background-color: ${data[i].color};"></div><a style="color: ${data[i].color};" href="${data[i].clientInfoVos[j].path}">${data[i].clientInfoVos[j].name}</a></li>`
                    }
                    dom += `</ul>`
                    dom += `</div>`
                    dom += `</div>`

                }
                dom += `</div>`
                dom += `</div>`

            }

            base.innerHTML = dom

        }

    })

下面是源代码

<!DOCTYPE html>
<html  lang="zh" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="utf-8">
    <meta name="viewport"  content="width=device-width,initial-scale=1,user-scalable=no">
    <meta name="renderer" content="webkit">
    <title>汾石高速建设项目综合管控平台</title>
    <meta name="keywords" content="汾石高速建设项目综合管控平台">
    <meta name="description" content="汾石高速建设项目综合管控平台首页">
    <!--[if lt IE 9]>
    <meta http-equiv="refresh" content="0;ie.html"/>
    <![endif]-->
    <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
    <meta http-equiv="Pragma" content="no-cache" />
    <meta http-equiv="Expires" content="0" />
<!--    <link th:href="@{favicon.ico}" rel="stylesheet"/>-->
    <link th:href="@{/css/bootstrap.min.css}" rel="stylesheet"/>
    <link th:href="@{/css/jquery.contextMenu.min.css}" rel="stylesheet"/>
    <link th:href="@{/css/font-awesome.min.css}" rel="stylesheet"/>
    <link th:href="@{/css/animate.css}" rel="stylesheet"/>
    <link th:href="@{/css/style.css}" rel="stylesheet"/>
    <link th:href="@{/css/otherIndex.css}"  rel="stylesheet"/>
    <link th:href="@{/css/skins.css}" rel="stylesheet"/>
    <link th:href="@{/ruoyi/css/ry-ui.css?v=3.4.0}" rel="stylesheet"/>

    <style>
        body {
            height: auto;
        }

        .enlarge{
            cursor: pointer;
            transition: all 0.6s;
        }
        .enlarge:hover{
            transform: scale(1.13);
        }
        /*background-size: 100% 100%;*/
        .bj{background:url(../img/mainImg/bg1.png) no-repeat center;filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale')";-moz-background-size: 100% 100%;
            }
        .header{width:100%;height:1.15rem;padding-top:0.3rem;display:flex;position:relative;}
        .header_center{width:5.8rem;height:0.36rem;}
        .header_center img{width:5.8rem;}
        .header_left{flex:1;margin-top:-0.05rem;background:url(../img/left_h.png) no-repeat center right;filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale')";-moz-background-size: 100% 100%;color:#ffffff;
            line-height:0.9rem;}
        .header_right{flex:1;margin-top:-0.05rem;background:url(../img/left_r.png) no-repeat center left;filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale')";-moz-background-size: 100% 100%;color:#ffffff;
            line-height:0.9rem;}
        .left{float:left;display:block;}
        .header_right a{margin-right:0.5rem;color:#ffffff;}
        .header_right a>img{width:0.22rem;height:0.22rem;}
        .header_right a .user_icon{width:0.18rem;height:0.22rem;}
        .right{float:right;display:block;}
        .clearfix{clear:both;overflow: hidden;content:'';}
        #rq{margin-left:0.2rem;}
        #datetime{text-indent: 0.3rem;}
        .list_tk{width:1.35rem;flex-direction:column;display:flex;position:absolute;top:1rem;right:0.68rem;background:url(../img/setuptk.png) no-repeat 100% 100%;background-size:100% 100%;padding:0.15rem 0;padding-bottom:0.05rem;display:none;z-index:100;}
        .list_tk a{display:block;color:#ffffff;text-align:center;font-size:0.18rem;height:0.4rem;line-height:0.4rem;}
        .list_tk a:hover{color:#8ff2ff;}
    </style>

    <style>
        body {
            height: auto !important;
            background-color: #020432;
        }
        html{
            min-height: 100% !important;
            overflow-y: hidden;
            overflow-x: hidden;
        }

        .bgcolor{
            min-width: 1.2rem;
            height: auto !important;
            background-size: 100% 100%;
        }

        /*旋转部分、、、、、、、、、、、、、、、、、、、、、、、、、、*/
        .section3 {
            width: 100%;
            height: 8rem;
            margin: 0 auto 0;
            /*background: url(../img/mainImg/bg.png) no-repeat center;*/
            background-size: 100% 100%;
        }
        .section3 > img{
            width: 100%;
            height: 100%;
        }

        .u_p3d {
            -webkit-transform-style: preserve-3d;
            -ms-transform-style: preserve-3d;
            -o-transform-style: preserve-3d;
            -moz-transform-style: preserve-3d;
            transform-style: preserve-3d;
        }

        .section3 .ui_base {

            position: absolute;
            left: 50%;
            top: 1.5rem;
            transform: translate(-50%, 3rem);

            width: 4rem;
            height: 0;
            -webkit-perspective: 10rem;
            -moz-perspective: 10rem;
            -ms-perspective: 10rem;
            -o-perspective: 10rem;
            perspective: 10rem;
            -webkit-perspective-origin: 50% 0%;
            -moz-perspective-origin: 50% 0%;
            -o-perspective-origin: 50% 0%;
            -ms-perspective-origin: 50% 0%;
            perspective-origin: 50% 50%;
        }

        .section3 .ball_c {
            -webkit-transform-origin: 50% 50%;
            -moz-transform-origin: 50% 50%;
            -ms-transform-origin: 50% 50%;
            -o-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
            position: absolute;
            width: 2.25rem;
            height: 1.57rem;
            line-height: 1.57rem;
            text-align: center;
            background: url(../img/zfzs.png) no-repeat;
            left: 0.90rem;
            top: 1rem;
        }

        .ball_c {}

        .section3 .ball_c img {
            width: 1.25rem;
            height: 1.25rem;
            border-radius: 0.10rem;
        }


        .section3 .ball_c p {
            margin-top: -0.70rem;
        }

        .section3 .ball_c p a {
            font-size: 0.19rem;
            font-family: ""
        }

        .section3 .base {
            -webkit-transform: rotateX(80deg) rotateY(-10deg);
            -moz-transform: rotateX(80deg) rotateY(-10deg);
            -o-transform: rotateX(80deg) rotateY(-10deg);
            -ms-transform: rotateX(80deg) rotateY(-10deg);
            transform: rotateX(80deg) rotateY(-10deg);
            position: relative;
            width: 3.50rem;
            height: 3.50rem;
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
            top: -1.20rem;
            left: 0.30rem;
        }

        .section3 .ball_base {
            -webkit-transform-origin: 2.25rem 0rem;
            -moz-transform-origin: 2.25rem 0rem;
            -ms-transform-origin: 2.25rem 0rem;
            -o-transform-origin: 2.25rem 0rem;
            transform-origin: 2.25rem 0rem;
            position: absolute;
            top: 1.75rem;
            left: -0.50rem;
            width: 2.25rem;
            height: 1.27rem
        }


        .section3 .ball {
            display: flex;
            flex-direction: column;
            align-items: center;
            -webkit-transition: all 2s ease-out 0ms;
            -o-transition: all 2s ease-out 0ms;
            -moz-transition: all 2s ease-out 0ms;
            -ms-transition: all 2s ease-out 0ms;
            transition: all 2s ease-out 0ms;
            -webkit-transform-origin: 50% 50%;
            -o-transform-origin: 50% 50%;
            -ms-transform-origin: 50% 50%;
            -moz-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
            position: absolute;
            left: -2.50rem;
            top: -0.60rem;
            /* overflow: hidden; */
        }


        .section3 .ball .img {
            width: 0.8rem;
            height: 0.8rem;
        }

       

        .section3 .base {
            -webkit-animation: cir 28s linear 0s infinite;
            -o-animation: cir 28s linear 0s infinite;
            -ms-animation: cir 28s linear 0s infinite;
            -mozanimation: cir 28s linear 0s infinite;
            animation: cir 28s linear 0s infinite
        }

        

        @keyframes cir {
            0% {
                transform: rotateX(80deg) rotateY(0) rotateZ(0deg)
            }

            100% {
                transform: rotateX(80deg) rotateY(0) rotateZ(-360deg)
            }
        }

        @-webkit-keyframes cir {
            0% {
                -webkit-transform: rotateX(80deg) rotateY(0) rotateZ(0deg)
            }

            100% {
                -webkit-transform: rotateX(80deg) rotateY(0) rotateZ(-360deg)
            }
        }

        .spin_box_item {
            position: relative;
        }
        .spin_box_item .spin_box_item_img{
            display: flex;
            justify-content: center;
            align-items: center;
            width: 1rem;
            height: 1rem;
            border-radius: 50%;
        }
        .spin_box_item_img img{
            width: 0.40rem;
            height: 0.40rem;
        }

        .spin_box_item .spin_box_item_children {
            position: absolute;
            left: -2.50rem;
            top: 0;
            /* overflow:inherit */
        }

        .spin_box_item .spin_box_item_children .corner {
            display: flex;
            justify-content: center;
            align-items: center;
            position: absolute;
            left: -0.20rem;
            top: -0.20rem;
            transform: translate(50%, 50%);
            width: 0.20rem;
            height: 0.20rem;
            border-radius: 50%;
        }


        .spin_box_item .spin_box_item_children .corner .circle {
            width: 0.12rem;
            height: 0.12rem;
            border-radius: 50%;
            /* border: 1px solid #148460;
            background-color: rgba(5, 88, 87, .5); */
        }

        .spin_box_item .spin_box_item_children .content_box {
            min-width: 2rem;
            max-width: 3.2rem;
            padding: 0.08rem;
            /* 实现四个边角切割 */
            /* background-size: 300px 200px;
            background-repeat: no-repeat; */
            clip-path: polygon(0.15rem 0rem, calc(100% - 0.20rem) 0, 100% 0, 100% calc(100% - 0.29rem), calc(100% - 0.29rem) 100%, 0 100%, 0 calc(100% - 0.20rem), 0 0);


            /* border: solid 1rem #4C829A; */
            /* box-shadow: 0 0 20rem 10rem #0D5957; */
        }

        .spin_box_item .spin_box_item_children .content_box ul {
            /* width: 100%;
            height: 100%; */

            margin: 0;
            padding: 0.10rem;
            clip-path: polygon(0% 0%, 80% 0%, 100% 0%, 100% 1.95rem, 2.52rem 100%, 0% 100%, 0% 80%, 0% 20%);
        }

        .spin_box_item .spin_box_item_children .content_box ul li {
            display: flex;
            align-items: center;
            padding: 0.05rem 0;
            margin-left: 0.20rem;
            margin-right: 0.20rem;
        }

        .spin_box_item .spin_box_item_children .content_box ul li>div {

        }
        .spin_box_item .spin_box_item_children .content_box ul li>div>div{
            width: 0.1rem;
            height: 0.1rem;

            border-radius: 50%;
            margin-right: 0.10rem;
        }

        .spin_box_item .spin_box_item_children .content_box ul li a {}




        .display_block {
            display: block;
        }

        .display_none {
            display: none;
        }

        .fj{
            position: absolute;
            left: 50%;
            /* top: 50%; */
            transform: translate(-50%, -10%);
            /*animation: yuan 5s linear 0s infinite;*/
            width: 18rem;
            height: 7rem;
        }

        .fj img{
            width: 100%;
            height: 100%;
        }

        .qiu {

            position: absolute;
            left: 50%;
            /* top: 50%; */
            transform: translate(-46%, -76%);
            animation: yuan 5s linear 0s infinite;
            width: 3.5rem;
            height: 3.5rem;
            cursor: pointer;
        }
        .qiu img{
            width: 100%;
            height: 100%;
        }

        @keyframes yuan {
            0% {
                transform: translate(-46%, -2rem)
            }

            50% {
                transform: translate(-46%, -2.4rem)
            }

            100% {
                transform: translate(-46%, -2rem)
            }
        }
        .guang{
            /* position: absolute;
            top: 117rem;
            left: -164rem; */
            animation: cir11 20s linear 0s infinite;
            transform: rotateX(-90deg) rotateY(72deg) translateY(-0.70rem)

        }

        @keyframes cir11 {
            0% {
                transform: rotateY(0deg) rotateZ(0)
            }

            100% {
                transform: rotateY(0) rotateZ(-360deg)
            }
        }

        @keyframes guang {
            0% {
                transform: rotateX(80deg) rotateY(0) rotateZ(0)
            }

            100% {
                transform: rotateX(80deg) rotateY(0) rotateZ(-360deg);

            }
        }


    </style>
</head>
<body class="bgcolor bj" th:classappend="${@config.getKey('sys.index.skinName')}">
  <div class="header">
      <div class="list_tk">
<!--          -->
          <a th:href="@{/visual/index/xmjs}">建设理念</a>
          <a th:href="@{/visual/index/kshgl}">可视化界面</a>
          <a th:href="@{/webIndex}">工作台</a>
          <a th:href="@{/index}">单点登录</a>

          <!-- <a th:href="@{/client/info}">客户系统管理</a>
          <a th:if="${session.isAdmin}" th:href="@{/system/dept}">组织机构</a>
          <a th:if="${session.isAdmin}" th:href="@{/system/user}">用户管理</a>
          <a th:if="${session.isAdmin}" th:href="@{/system/post}">岗位信息</a>
          <a th:if="${session.isAdmin}" th:href="@{/monitor/operlog}">操作日志</a>
          <a th:if="${session.isAdmin}" th:href="@{/datainterface/fenlei}">分类</a>
          <a th:if="${session.isAdmin}" th:href="@{/datainterface/shujuyuan}">数据源</a>
          <a th:if="${session.isAdmin}" th:href="@{/datainterface/sqlver}">sql配置版本</a> -->
      </div>
      <div class="header_left clearfix">
          <div class="left" id="datetime"></div>
          <div class="left" id="rq"></div>
      </div>
      <div class="header_center">
          <img th:src="@{/img/sylogo.png}" />
      </div>
      <div class="header_right">
          <a class="right" th:href="@{/logout}">
              <img th:src="@{/img/logout.png}" />
          </a>
          <a class="right" href="javascript:;" id="setUp" type="1">
              <img th:src="@{/img/sz.png}" />
          </a>
          <a class="right" th:href="@{/system/user/profile}">
              <img class="left user_icon" style="margin-right:0.09rem;margin-top:0.30rem;" th:src="@{/img/user_icon.png}" />
              <span class="left" style="margin-right:0.01rem;">当前用户:</span>
              <span class="left" style="margin-right:0.01rem;" th:title="${session.user.deptName}" th:if="${session.user.deptName}">
                  [[${session.user.deptName}]]
              </span>
              <span class="left">
                  [[${session.user.userName}]]
              </span>
          </a>
      </div>
  </div>
  <div class="section3">

      <div class="ui_base u_p3d">
          <div class="fj">
              <img src="../img/mainImg/bg.png">
          </div>

          <div class="qiu">
              <img src="../img/mainImg/yuan.png" alt="" title="可视化">
          </div>
          <div class="base u_p3d" id="base">

          </div>
      </div>

  </div>
<!--    <th:block th:include="include :: headerHtmlRem"/>-->
<!--    <div class="index_content_box"></div>-->

<!-- 全局js -->
	<script th:src="@{/js/jquery.min.js}"></script>

<script th:src="@{/js/bootstrap.min.js}"></script>
<script th:src="@{/js/plugins/metisMenu/jquery.metisMenu.js}"></script>
<script th:src="@{/js/plugins/slimscroll/jquery.slimscroll.min.js}"></script>
<script th:src="@{/js/jquery.contextMenu.min.js}"></script>
<script th:src="@{/ajax/libs/blockUI/jquery.blockUI.js}"></script>
<script th:src="@{/ajax/libs/layer/layer.min.js}"></script>
<script th:src="@{/ruoyi/js/ry-ui.js?v=3.4.0}"></script>
<script th:src="@{/ruoyi/index.js}"></script>
<script th:src="@{/ajax/libs/fullscreen/jquery.fullscreen.js}"></script>

  <script>


  </script>

<script th:inline="javascript">
    var ctx = [[@{/}]];
        $(function () {
            var whei = document.documentElement.clientWidth || window.innerWidth;

            $("html").css({ fontSize: whei / 20 });
            $(window).resize(function () {
                var whei =  document.documentElement.clientWidth || window.innerWidth;
                $("html").css({ fontSize: whei / 20 })
            });
            // $('#setUp').click(function(){
            //     var type=$(this).attr('type');
            //     if(type==1){
            //         $('.list_tk').css('display','flex');
            //         $(this).attr('type',2);
            //     }else{
            //         $('.list_tk').css('display','none');
            //         $(this).attr('type',1);
            //     }
            // })

            $("#setUp").on("click", function(e){
                $('.list_tk').css('display','flex');
                $(document).one("click", function(){
                    $('.list_tk').css('display','none');
                });
                e.stopPropagation();
            });
            $(".list_tk").on("click", function(e){
                e.stopPropagation();
            });
            var daterq=['星期一','星期二','星期三','星期四','星期五','星期六','星期日']
            getItem();
            setInterval(()=>{
                let date= new Date();
                let y = date.getFullYear();
                let MM = date.getMonth() + 1;
                MM = MM < 10 ? ('0' + MM) : MM;
                let d = date.getDate();
                d = d < 10 ? ('0' + d) : d;
                let h = date.getHours();
                h = h < 10 ? ('0' + h) : h;
                let m = date.getMinutes();
                m = m < 10 ? ('0' + m) : m;
                let s = date.getSeconds();
                s = s < 10 ? ('0' + s) : s;
                var rq=date.getDay()-1
                // y + '-' + MM + '-' + d + ' ' +
                var updateTime = h + ':' + m + ':' + s;
                var datetime=y+'年'+MM+'月'+d+'日'+'  '+updateTime
                $('.header_left_time').html(updateTime);
                $('#datetime').html(datetime);
                $('#rq').html(daterq[rq]);

            },1000);


        });
    /*用户管理-重置密码*/
    function resetPwd() {
        var url = ctx + 'system/user/profile/resetPwd';
        $.modal.open("重置密码", url, '800', '500');
    }

    // // 获取当前时间
    // function getNowTime () {
    //     var dateTime;
    //     var yy = new Date().getFullYear();
    //     var mm = new Date().getMonth() + 1;
    //     var dd = new Date().getDate();
    //     var hh = new Date().getHours();
    //     var mf = new Date().getMinutes() < 10 ? '0' + new Date().getMinutes(): new Date().getMinutes();
    //     var ss = new Date().getSeconds() < 10 ? '0' + new Date().getSeconds():new Date().getSeconds();
    //     dateTime =  hh + ':' + mf + ':' + ss
    //
    //     return dateTime
    // }
    // //定时执行setTime
    // setInterval("getNowTime()",500);
    // function setTime() {
    //     $('.header_left_time').html(getNowTime());
    // }
    //获取数据
    function getItem(){
        var prefix = ctx + "client/info/all/main";
        $.ajax({
            type: "GET",
            url: prefix,
            dataType: 'json',
            success: function(res) {

                for (let i in res) {
                    let color=["#96e358","#96a5ff","#fca980","#9fd59c","#74a2e7","#fd9580"];
                    let imgPath=["img/bangong.png","img/yunying.png","img/map-ruler.png","img/yingjijiuhu.png","img/caiwu.png","img/database.png"];
                    let outer = "<div class='home_content'>"
                        + "<div class='home_first' >"
                        + "<div class='first_box' style='background-color:" + res[i].bgColor + " !important;'><div class='home_first_left'>"
                        + "<img src='" + res[i].iconPath + " '>"
                        + "</div>"
                        + "<div class='home_first_right' >"
                        + " <div class='first_right_top'>" + res[i].name + "</div>"
                        + " <div class='first_right_bottom'>" + res[i].nameEn + " </div>"
                        + "</div></div>"
                        + "</div><div class='home_item home_item"+i+"'>"

                    $(".index_content_box").append(outer);
                    let code = res[i].clientInfoVos;
                    let core="";
                    let color2=""
                    for (let j in code) {
                        console.log(code)

                        if(code[j].status=='2'){
                            code[j].loginUrl="javascript:void(0);"
                            color2="#e0e0e0";
                            core += "<div class='home_cox'  style='background-color:" + color2 + " !important;'>"
                                + "<div class='top'><img src='"+ code[j].iconPath +"' ></div>"
                                + "<div class='bottom' style='color:#828282 !important; ' title='" + code[j].shortName + "'>" + code[j].shortName + "</div></div>"
                        }else {
                            core += "<div class='home_cox enlarge' οnclick='toLogin("+ code[j].id+",\""+code[j].name+"\")'>"
                                + "<div class='top'><img src='"+ code[j].iconPath +"' ></div>"
                                + "<div class='bottom' title='" + code[j].shortName + "'>" + code[j].shortName + "</div></div>"
                        }
                        core+="</div></div>"


                    }
                    $('.home_item'+i).append(core);
                }
            }
        });
    }
    function toLogin(id,name){
        $.post(ctx +"client/login",{clientId:id},function (res){
            if(res.code == 0) {
                if(res.data.errCode != '1000'){
                    layer.alert(res.data.errMsg, {
                        icon: $.modal.icon(modal_status.FAIL),
                        title: "系统提示",
                        btn: ['确认'],
                        btnclass: ['btn btn-primary']
                    });
                }else if (res.data.open == '3') {
                    window.open(res.data.clientLoginUrl, '_blank');
                } else {
                    //应急系统,要求不进行urlencode
                    // if (res.data.clientInfo.paramEncode == '2') {
                    //     openPostWindow(res.data.clientLoginUrl, res.data.authName, res.data.authorization);
                    // } else
                    //     openPostWindow(res.data.clientLoginUrl, res.data.authName,
                    //         res.data.clientInfo.paramEncode == '1'?
                    //             encodeURIComponent(res.data.authorization):res.data.authorization
                    //     );
                    if(res.data.clientInfo.program == '1') {
                        window.open(res.data.clientLoginUrl + "?" + res.data.authName + "=" + (res.data.clientInfo.paramEncode == '1' ?
                            encodeURIComponent(res.data.authorization) : res.data.authorization), '_blank');
                    }else{
                        openPostWindow(res.data.clientLoginUrl, res.data.authName,
                            res.data.clientInfo.paramEncode == '1'?
                                encodeURIComponent(res.data.authorization):res.data.authorization
                        );
                    }
                }

            }else {
                if (res.data == 'C1301') { //未配置公钥信息
                    layer.alert(res.msg, {
                        icon: $.modal.icon(modal_status.WARNING),
                        title: "系统提示",
                        btn: ['确认'],
                        btnclass: ['btn btn-primary']
                    });
                } else if (res.data == 'C1202') { //未绑定用户信息
                    // $.modal.alertErrorUrl(res.msg);
                    //  if(res.msg= ){
                    //  }
                    //
                    layer.alert(res.msg, {
                        icon: $.modal.icon(modal_status.WARNING),

                        title: "系统提示",
                        btn: ['确认', '取消'],
                        btnclass: ['btn btn-primary'],
                        yes: function (index) {
                            var Aurl = `client/info/user/bind?clientId=` + id;
                            if([[${bindUserOpenWindow}]] == true){
                                $.modal.open("客户端系统绑定用户【"+name+"】",Aurl,600,380);
                                layer.close(index);
                            }else
                                window.open(Aurl, '_self');
                        }

                    });
                } else {     //其他错误提示
                    layer.alert(res.msg, {
                        icon: $.modal.icon(modal_status.FAIL),
                        title: "系统提示",
                        btn: ['确认'],
                        btnclass: ['btn btn-primary']
                    });
                }
            }
        });
    }

    function openPostWindow(url,paramName, params) {
        var newWin = window.open();
        //设置样式为隐藏,打开新标签再跳转页面前,如果有可现实的表单选项,用户会看到表单内容数据
        var formStr = '<form style="visibility:hidden;" method="POST" action="' + url + '">' +
            '<input type="hidden" name="'+paramName+'" value="' + params + '" />' +
            '</form>' +
            '';
        newWin.document.body.innerHTML = formStr;
        newWin.document.forms[0].submit();
        return newWin;
    }


    // var data = [{
    //     name: '其他',
    //     img: '../img/mainImg/icon5.png',
    //     // color: 'rgba(242,58,58)',
    //     lucency: '',
    //     children: [{
    //         name: '合同管理系统',
    //         path: 'http://www.baidu.com'
    //     }, {
    //         name: '档案资料管理系统',
    //         path: 'http://www.baidu.com'
    //     }]
    // }, {
    //     name: '安全部',
    //     img: '../img/mainImg/icon4.png',
    //     children: [{
    //         name: '合同管理系统',
    //         path: 'http://www.baidu.com'
    //     }, {
    //         name: '档案资料管理系统',
    //         path: 'http://www.baidu.com'
    //     }]
    // }, {
    //     name: '质检部',
    //     img: '../img/mainImg/icon3.png',
    //     children: [{
    //         name: '合同管理系统',
    //         path: 'http://www.baidu.com'
    //     }, {
    //         name: '档案资料管理系统',
    //         path: 'http://www.baidu.com'
    //     }]
    // }, {
    //     name: '工程部',
    //     img: '../img/mainImg/icon2.png',
    //     children: [{
    //         name: '合同管理系统',
    //         path: 'http://www.baidu.com'
    //     }, {
    //         name: '档案资料管理系统',
    //         path: 'http://www.baidu.com'
    //     }]
    // }, {
    //     name: '办公室',
    //     img: '../img/mainImg/icon1.png',
    //     color: 'rgb(33,208,120)',
    //     children: [{
    //         name: '合同管理系统',
    //         path: 'http://www.baidu.com'
    //     }, {
    //         name: '档案资料管理系统',
    //         path: 'http://www.baidu.com'
    //     }]
    // }]


    var qiu = document.querySelector('.qiu')
    qiu.addEventListener('click',function () {
        location.href = '/visual/index/kshyzt'
    })


    var prefix = ctx + "client/info/all/main";

    var base = document.getElementById('base')

    // 列表弹窗
    function ListShowFn(event) {
        var listBox = event.lastChild

        if (listBox.className.indexOf('display_none') != -1) {
            listBox.setAttribute('class', 'spin_box_item_children display_block')
            listBox.style = `left:${ -listBox.clientWidth - 20}px`
            var ul = event.getElementsByClassName('ul')[0]
            var style = ul.getAttribute('style')
            ul.style = style + `clip-path:polygon(0% 0%, 80% 0%, 100% 0%, 100% ${ul.clientHeight - 25}px, ${ul.clientWidth - 25}px 100%, 0% 100%, 0% 80%, 0% 20%)`
        } else {
            listBox.setAttribute('class', 'spin_box_item_children display_none')
        }
    }
    // 动画停止与开始
    base.addEventListener('mouseenter', function () {
        this.style = 'animation-play-state: paused'
        for (var i = 0; i < this.children.length; i++) {
            this.children[i].children[0].style = this.children[i].children[0].getAttribute('style') + ';animation-play-state: paused'
        }
    })
    base.addEventListener('mouseleave', function () {
        this.style = 'animation-play-state: inherit'
        for (var i = 0; i < this.children.length; i++) {
            this.children[i].children[0].style = this.children[i].children[0].getAttribute('style') + ';animation-play-state: inherit'
        }
    })

    function colorFn(val){
        // 16进制颜色值的正则
        var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
        // 把颜色值变成小写
        var color = val.toLowerCase();
        if (reg.test(color)) {
            // 如果只有三位的值,需变成六位,如:#fff => #ffffff
            if (color.length === 4) {
                var colorNew = "#";
                for (var i = 1; i < 4; i += 1) {
                    colorNew += color.slice(i, i + 1).concat(color.slice(i, i + 1));
                }
                color = colorNew;
            }
            // 处理六位的颜色值,转为RGB
            var colorChange = [];
            for (var i = 1; i < 7; i += 2) {
                colorChange.push(parseInt("0x" + color.slice(i, i + 2)));
            }
            return "RGB(" + colorChange.join(",") + ")";
        } else {
            return color;
        }
    }


    $.ajax({
        type: "GET",
        url: prefix,
        dataType: 'json',
        success: function(res) {

            // var spinchi = spin.getElementsByClassName('spin_box_item_img')
            var data = res

            var num = 360 / data.length
            var delay = 100

            var dom = ''
            // dom += ` <div class="guang ball_base u_p3d ">
            //         <img src="./img/guang.png" alt="">
            //     </div>`

            var style = document.createElement('style');
            style.type = 'text/css';
            var styleVal = ''
            for(var i=0;i<data.length;i++) {
                styleVal += `
                     @keyframes cir${i + 1} {
                        0% {
                            transform: rotateY(-${num * i}deg) rotateZ(0)
                        }

                        100% {
                            transform: rotateY(-${(num * i) + 360}deg) rotateZ(0)
                        }
                    }`

            }

            style.innerHTML= styleVal
            document.getElementsByTagName('head').item(0).appendChild(style);


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

                // 没有bgColor
                if (!data[i].bgColor) {
                    data[i].color = 'rgb(40,247,255)'
                }else {
                    data[i].color = data[i].bgColor
                }
                // if(data[i].color.indexOf('rgb') !== '-1'){
                //     data[i].color = data[i].color
                // }else {

                data[i].color = colorFn(data[i].color)
                // }



                // 颜色渲染
                if (data[i].color) {

                    var colorVal = data[i].color.split(',')[2]
                    var kuohao = colorVal.substr(colorVal.length - 1, 1)
                    data[i].bgc = data[i].color.split(',')[0] + ',' + data[i].color.split(',')[1] + ',' + colorVal.split(
                        ')')[0] + ',' + (data[i].lucency ? data[i].lucency : '0.5') + kuohao
                    data[i].bgcBor = data[i].color.split(',')[0] + ',' + data[i].color.split(',')[1] + ',' + colorVal.split(
                        ')')[0] + ',' + '0.05' + kuohao
                    data[i].bgcBor1 = data[i].color.split(',')[0] + ',' + data[i].color.split(',')[1] + ',' + colorVal.split(
                        ')')[0] + ',' + '0.2' + kuohao
                    data[i].bgcBorxiantao1 = data[i].color.split(',')[0] + ',' + data[i].color.split(',')[1] + ',' +
                        colorVal.split(')')[0] + ',' + '1' + kuohao
                    data[i].bgcBorxiantao2 = data[i].color.split(',')[0] + ',' + data[i].color.split(',')[1] + ',' +
                        colorVal.split(')')[0] + ',' + '0' + kuohao

                }
                // dom渲染
                delay += 200
                dom += `<div class="ball_base u_p3d ball_${i + 1}" style="cursor: pointer;transform:rotateX(-90deg) rotateY(${num * i}deg) translateY(-0.70rem);">`
                dom += `<div class="ball spin_box_item" style="color:${data[i].color};transition-delay: ${delay}ms;animation: cir${i + 1} 28s linear 0s infinite;transform: rotateY(${num * i}deg) rotateZ(0)"  οnclick="ListShowFn(this)">`
                dom += `<div class="spin_box_item_img" style="background-color: ${data[i].bgc};border: 0.01rem dashed ${data[i].color}">`
                dom += `<img src="${data[i].iconPath}"></img>`
                dom += `</div>`
                // dom += `<img class="img" src="${data[i].img}" alt="">`
                dom += `<p style="color:${data[i].color};margin-top: 0.10rem;font-size: 0.18rem">${data[i].name}</p>`
                // dom += `<img src="./img/矩形2拷贝5.png" alt="">`
                dom +=
                    `<div style="width:0.04rem;height:1.20rem;background:linear-gradient(${data[i].bgcBorxiantao1} 0%, ${data[i].bgcBorxiantao2} 100%)"></div>`
                // 系统列表
                if (data[i].clientInfoVos) {
                    dom += `<div class="spin_box_item_children display_none">`
                    dom +=
                        `<div class="corner" style="border: 0.01rem solid ${data[i].color};background-color: ${data[i].bgc}">`
                    dom +=
                        `<div class="circle" style="border: 0.01rem solid ${data[i].color};background-color: ${data[i].bgc}"></div>`
                    dom += `</div>`
                    // background: linear-gradient(-45deg, #4C829A 20px, rgba(5, 28, 65, 0.05) 0) bottom right;
                    // clip-path:'${polygon(0% 0%, 80% 0%, 100% 0%, 100% 85px, 209px 100%, 0% 100%, 0% 80%, 0% 20%)}';
                    dom +=
                        `<div class="content_box" style="background: linear-gradient(-45deg, ${data[i].color} 0.20rem, ${data[i].bgcBor} 0) bottom right;border: solid 0.01rem ${data[i].color};box-shadow: 0 0 0.20rem 0.10rem ${data[i].color};">`
                    dom += `<ul class="ul" style="box-shadow: 0 0 0.20rem 0.05rem ${data[i].color} inset;background-color:${ data[i].bgcBor1};">`
                    for (var j = 0; j < data[i].clientInfoVos.length; j++) {

                        if(data[i].clientInfoVos[j].status=='2'){
                            // dom += `<li style="color:${data[i].bgc}"><div><div  style="background-color: ${data[i].bgc};"></div></div><a href="javascript:void(0);" style="color: ${data[i].bgc};font-size: 0.12rem">${data[i].clientInfoVos[j].name}</a></li>`
                            dom += `<li style="color:${data[i].bgc}"><div><div  style="background-color: ${data[i].bgc};"></div></div><a href="javascript:void(0);" style="color: ${data[i].bgc};font-size: 0.12rem;font-weight:900">${data[i].clientInfoVos[j].name}</a></li>`
                        }else{
                            // dom += `<li style="color:${data[i].color}"><div><div  style="background-color: ${data[i].color};"></div></div><a style="color: ${data[i].color};font-size: 0.12rem" οnclick='toLogin("${data[i].clientInfoVos[j].id}",\"${data[i].clientInfoVos[j].name}\")'>${data[i].clientInfoVos[j].name}</a></li>`
                            dom += `<li style="color:${data[i].color}"><div><div  style="background-color: ${data[i].color};"></div></div><a style="color: ${data[i].color};;font-size: 0.12rem;font-weight:900" οnclick='toLogin("${data[i].clientInfoVos[j].id}",\"${data[i].clientInfoVos[j].name}\")'>${data[i].clientInfoVos[j].name}</a></li>`
                        }

                    }
                    dom += `</ul>`
                    dom += `</div>`
                    dom += `</div>`

                }
                dom += `</div>`
                dom += `</div>`

            }

            base.innerHTML = dom

        }

    })
</script>
</body>
</html>

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐