guhongwei 5 anni fa
parent
commit
b79090b10d
51 ha cambiato i file con 1897 aggiunte e 5 eliminazioni
  1. 412 0
      public/home.html
  2. 245 0
      public/static/home/css/index.css
  3. 111 0
      public/static/home/css/lib.css
  4. 146 0
      public/static/home/css/road.css
  5. BIN
      public/static/home/images/bg_1.jpg
  6. BIN
      public/static/home/images/fn_1.png
  7. BIN
      public/static/home/images/fn_1_h.png
  8. BIN
      public/static/home/images/fn_2.png
  9. BIN
      public/static/home/images/fn_2_h.png
  10. BIN
      public/static/home/images/fn_3.png
  11. BIN
      public/static/home/images/fn_3_h.png
  12. BIN
      public/static/home/images/fn_4.png
  13. BIN
      public/static/home/images/fn_4_h.png
  14. BIN
      public/static/home/images/fn_5.png
  15. BIN
      public/static/home/images/fn_5_h.png
  16. BIN
      public/static/home/images/footer_bg.png
  17. BIN
      public/static/home/images/index-head.png
  18. BIN
      public/static/home/images/line.png
  19. BIN
      public/static/home/images/login-color.png
  20. BIN
      public/static/home/images/login_bg_1.png
  21. BIN
      public/static/home/images/logo.png
  22. BIN
      public/static/home/images/sci.gif
  23. 5 0
      public/static/home/js/stats.min.js
  24. 927 0
      public/static/home/js/three.min.js
  25. 5 0
      public/static/home/lib/jquery/jquery-2.1.1.min.js
  26. 2 0
      public/static/home/lib/layui/css/layui.css
  27. 2 0
      public/static/home/lib/layui/css/layui.mobile.css
  28. 2 0
      public/static/home/lib/layui/css/modules/code.css
  29. BIN
      public/static/home/lib/layui/css/modules/layer/default/icon-ext.png
  30. BIN
      public/static/home/lib/layui/css/modules/layer/default/icon.png
  31. 2 0
      public/static/home/lib/layui/css/modules/layer/default/layer.css
  32. BIN
      public/static/home/lib/layui/css/modules/layer/default/loading-0.gif
  33. BIN
      public/static/home/lib/layui/css/modules/layer/default/loading-1.gif
  34. BIN
      public/static/home/lib/layui/css/modules/layer/default/loading-2.gif
  35. 2 0
      public/static/home/lib/layui/lay/modules/carousel.js
  36. 2 0
      public/static/home/lib/layui/lay/modules/code.js
  37. 2 0
      public/static/home/lib/layui/lay/modules/element.js
  38. 2 0
      public/static/home/lib/layui/lay/modules/flow.js
  39. 2 0
      public/static/home/lib/layui/lay/modules/form.js
  40. 5 0
      public/static/home/lib/layui/lay/modules/jquery.js
  41. 2 0
      public/static/home/lib/layui/lay/modules/layedit.js
  42. 2 0
      public/static/home/lib/layui/lay/modules/layer.js
  43. 2 0
      public/static/home/lib/layui/lay/modules/laypage.js
  44. 2 0
      public/static/home/lib/layui/lay/modules/laytpl.js
  45. 2 0
      public/static/home/lib/layui/lay/modules/mobile.js
  46. 2 0
      public/static/home/lib/layui/lay/modules/tree.js
  47. 2 0
      public/static/home/lib/layui/lay/modules/upload.js
  48. 2 0
      public/static/home/lib/layui/lay/modules/util.js
  49. 2 0
      public/static/home/lib/layui/layui.all.js
  50. 1 1
      src/layout/live/head.vue
  51. 4 4
      src/views/home.vue

+ 412 - 0
public/home.html

@@ -0,0 +1,412 @@
+<!DOCTYPE html>
+<html>
+
+<head>
+  <meta charset="utf-8">
+  <title>吉林省计算中心科技服务平台</title>
+  <!-- layui -->
+  <link rel="stylesheet" href="static/home/lib/layui/css/layui.css">
+  <link rel="stylesheet" href="static/home/css/lib.css">
+  <link rel="stylesheet" href="static/home/css/road.css">
+  <link rel="stylesheet" href="static/home/css/index.css">
+  <style>
+    .canvas-stats {
+      display: none;
+    }
+  </style>
+</head>
+
+<body>
+  <div class="header">
+    <a href="" style="display: none;">
+      <div class="home-btn"></div>
+    </a>
+    <img src="static/images/logo.png" alt="">
+    <p>吉林省计算中心科技服务平台</p>
+  </div>
+  <img class="sci-wheel" src="static/home/images/sci.gif" alt="">
+  <div class="center">
+    <a class="list fn_1 moveUpDownFla1" target="_blank" href="market/index">
+      <p>科技超市</p>
+    </a>
+    <a class="list fn_2 moveUpDownFla2" target="_blank" href="hallList/index">
+      <p>直播大厅</p>
+    </a>
+    <a class="list fn_3 moveUpDownFla1" target="_blank" href="dynamic/index">
+      <p>动态监测</p>
+    </a>
+    <a class="list fn_4 moveUpDownFla2" target="_blank" href="live/service">
+      <p>创新服务</p>
+    </a>
+    <a class="list fn_5 moveUpDownFla2" target="_blank" href="technical/index">
+      <p>技术培训</p>
+    </a>
+  </div>
+  <!--流星-->
+  <div class="liuxing liuxing1 liuxingFla"></div>
+  <div class="liuxing liuxing2 liuxingFla2"></div>
+  <div class="liuxing liuxing3 liuxingFla3"></div>
+  <div class="liuxing liuxing4 liuxingFla4"></div>
+  <div id="canvas-container-1" class="canvas-container">
+    <canvas id="canvas-1"></canvas>
+  </div>
+  <script src="static/home/js/stats.min.js"></script>
+  <script src="static/home/js/three.min.js"></script>
+  <script>
+    function ThreeJSCanvas(CANVAS_ID) {
+
+      var SCREEN_HEIGHT = Math.min(window.innerWidth, window.innerHeight);
+      var SCREEN_WIDTH = SCREEN_HEIGHT;
+      var SCREEN_ASPECT_RATIO = SCREEN_WIDTH / SCREEN_HEIGHT;
+      var canvas, container;
+
+      var container, loader, stats;
+      var renderer, camera, scene;
+      var raycaster, controls;
+
+      var ANIMATION_FRAME_LENGTH = 30,
+        INTERACT_DISTANCE = 2.5;
+      var objetArray = [],
+        animationQueue = [];
+
+      var color1 = [0 / 255, 110 / 255, 255 / 255],
+        color2 = [0 / 255, 255 / 255, 140 / 255];
+
+      var bitmap = [];
+      var BITMAP_SKIP = 1;
+
+      var fov = 90;
+      var cameraPos = [0, 0, 30];
+      var cameraLookAt = [0, 0, 0];
+      var viewHeight = 2 * Math.tan(THREE.Math.degToRad(fov / 2)) * cameraPos[2],
+        viewWidth = viewHeight * SCREEN_ASPECT_RATIO;
+      var mouse = new THREE.Vector3(10000, 10000, -1),
+        mouseScaled = new THREE.Vector3(10000, 10000, -1);
+
+      var frame = 0;
+
+      function init() {
+
+        // Global Variables
+        container = document.getElementById("canvas-container-" + CANVAS_ID);
+        canvas = document.getElementById("canvas-" + CANVAS_ID);
+        canvas.addEventListener('mousemove', onDocumentMouseMove, false);
+
+        loader = new THREE.JSONLoader();
+        stats = new Stats();
+        stats.domElement.classList.add("canvas-stats");
+        stats.domElement.id = "canvas-stats-" + CANVAS_ID;
+
+        /* If you are familiar with python and opencv
+           you can use this python script to generate custom bitmaps 
+           --------------------
+           https://git.io/vdBAu 
+           --------------------
+        */
+        var data = '#000000000000000000011110000000000000000000' +
+          '#000000000000000011111111110000000000000000' +
+          '#000000000000001111111111111100000000000000' +
+          '#000000000000011111111111111110000000000000' +
+          '#000000000000111111111111111111000000000000' +
+          '#000000000001111111111111111111100000000000' +
+          '#000000000011111111111111111111110000000000' +
+          '#000000000011111111111111111111110000000000' +
+          '#000000000111111111111111111111111000000000' +
+          '#000000000111111111111111111111111000000000' +
+          '#000000001111111111111111111111111100000000' +
+          '#000000001111111111111111111111111100000000' +
+          '#000000001111111111111111111111111100000000' +
+          '#000000001111111111111111111111111100000000' +
+          '#000000001111111111111111111111111100000000' +
+          '#000000000111111111111111111111111000000000' +
+          '#000000000111111111111111111111111000000000' +
+          '#000000000111111111111111111111111000000000' +
+          '#000000000011111111111111111111110000000000' +
+          '#000000000011111111111111111111110000000000' +
+          '#000000000001111111111111111111100000000000' +
+          '#000000000001111111111111111111100000000000' +
+          '#000000000000111111111111111111000000000000' +
+          '#000000000000111111111111111110000000000000' +
+          '#000000000000011111111111111110000000000000' +
+          '#000000000000001111111111111100000000000000' +
+          '#000000000000001111111111111100000000000000' +
+          '#000000000000001111111111111000000000000000' +
+          '#000000000000000111111111111000000000000000' +
+          '#000000000000000111111111111000000000000000' +
+          '#000000000000000111111111111000000000000000' +
+          '#000000000000000111111111111000000000000000' +
+          '#000000000000000011111111110000000000000000' +
+          '#000000000000000010000000010000000000000000' +
+          '#000000000000000011111111110000000000000000' +
+          '#000000000000000010000000010000000000000000' +
+          '#000000000000000011111111110000000000000000' +
+          '#000000000000000010000000010000000000000000' +
+          '#000000000000000011111111110000000000000000' +
+          '#000000000000000000100001000000000000000000' +
+          '#000000000000000000110011000000000000000000' +
+          '#000000000000000000011110000000000000000000';
+
+        for (var i = 0; i < data.length; i++) {
+          if (data[i] == '#') {
+            bitmap.push([]);
+          } else {
+            bitmap[bitmap.length - 1].push(data[i] - '0');
+          }
+        }
+
+        container.appendChild(stats.domElement);
+
+        // Renderer
+        renderer = new THREE.WebGLRenderer({
+          alpha: true,
+          antialias: true,
+          canvas: canvas,
+        });
+        renderer.setClearColor(0x212121, 0);
+        renderer.setPixelRatio(window.devicePixelRatio);
+        renderer.shadowMap.enabled = true;
+        renderer.shadowMap.type = THREE.PCFSoftShadowMap;
+        renderer.setSize(SCREEN_WIDTH, SCREEN_HEIGHT);
+
+        // Camera and Controls
+        camera = new THREE.PerspectiveCamera(fov, SCREEN_ASPECT_RATIO, 0.1, 1000);
+        // camera = new THREE.OrthographicCamera(-viewWidth, viewWidth, viewHeight, -viewHeight, 1, 300);
+        camera.position.set(cameraPos[0], cameraPos[1], cameraPos[2]);
+        camera.lookAt(new THREE.Vector3(cameraLookAt[0], cameraLookAt[1], cameraLookAt[2]));
+        raycaster = new THREE.Raycaster();
+
+        // controls = new THREE.OrbitControls(camera);
+        // controls.rotateSpeed = 2.0;
+        // controls.zoomSpeed = 2.0;
+        // controls.enableZoom = true;
+        // controls.enablePan = true;
+        // controls.dampingFactor = 0.2;
+        // controls.addEventListener('change', render);
+
+        //Scene
+        scene = new THREE.Scene();
+
+
+        //Lights
+
+        // Making Object Array
+        var xOffset = -bitmap[0].length / (BITMAP_SKIP * 2);
+        var yOffset = bitmap.length / (BITMAP_SKIP * 2);
+        for (var i = 0; i < bitmap.length; i += BITMAP_SKIP) {
+          for (var j = 0; j < bitmap[i].length; j += BITMAP_SKIP) {
+            if (bitmap[i][j] == 1) {
+              planeGeometry = new THREE.PlaneGeometry(1, 1);
+              var circleGeometry = new THREE.CircleGeometry(1, 5);
+              var frac = i / bitmap.length;
+              // Materials
+              planeMaterial = new THREE.MeshBasicMaterial({
+                color: new THREE.Color(
+                  color1[0] * frac + color2[0] * (1 - frac),
+                  color1[1] * frac + color2[1] * (1 - frac),
+                  color1[2] * frac + color2[2] * (1 - frac)
+                ),
+                transparent: true,
+                opacity: THREE.Math.randFloat(0.4, 0.6),
+                side: THREE.DoubleSide
+              });
+
+              var circleMaterial = new THREE.MeshBasicMaterial({
+                color: new THREE.Color(1, 1, 1),
+                transparent: true,
+                opacity: THREE.Math.randFloat(0.8, 1),
+                side: THREE.DoubleSide
+              });
+
+              // Mesh
+              planeMesh = new THREE.Mesh(planeGeometry, planeMaterial);
+              planeMesh.position.set(xOffset + j / BITMAP_SKIP, yOffset - i / BITMAP_SKIP, 0);
+              var randWidth = THREE.Math.randFloat(0.6, 1.2);
+              var randHeight = randWidth
+              planeMesh.scale.set(randWidth, randHeight, 1);
+              scene.add(planeMesh);
+              objetArray.push([planeMesh, false]);
+
+
+              circleMesh = new THREE.Mesh(circleGeometry, circleMaterial);
+              circleMesh.position.set(xOffset + j / BITMAP_SKIP + THREE.Math.randFloat(-0.5, 0.5), yOffset - i / BITMAP_SKIP + THREE.Math.randFloat(-0.5, 0.5), 0.1);
+              var randRadius = THREE.Math.randFloat(0.05, 0.1);
+              circleMesh.scale.set(randRadius, randRadius, 1);
+              scene.add(circleMesh);
+              objetArray.push([circleMesh, false]);
+            }
+
+          }
+        }
+
+
+        //Geometry 
+
+        // Materials
+
+
+        // Mesh
+
+
+        // Helpers
+
+        //Add Stuff to Scene
+
+
+      }
+
+      function animate() {
+
+        requestAnimationFrame(animate);
+        render();
+        stats.update();
+        // controls.update();
+        frame++;
+      }
+
+      function render() {
+
+        while (animationQueue.length > 0) {
+          var obj_index = animationQueue[0][0];
+          var ani_frame = animationQueue[0][1];
+          if (ani_frame > ANIMATION_FRAME_LENGTH) {
+            objetArray[obj_index][1] = false;
+            animationQueue.shift();
+          } else {
+            break;
+          }
+        }
+
+        for (var i = 0; i < objetArray.length; i++) {
+          var obj = objetArray[i][0];
+          var isAnimating = objetArray[i][1];
+          if (isAnimating == false) {
+            var px = obj.position.x;
+            var py = obj.position.y;
+            var dist = Math.sqrt(Math.pow(px - mouseScaled.x, 2) + Math.pow(py - mouseScaled.y, 2));
+            if (dist < INTERACT_DISTANCE) {
+              var startPosVector = obj.position.clone();
+              var mouseRepelVector = new THREE.Vector3().subVectors(startPosVector, mouseScaled).multiplyScalar(THREE.Math.randFloat(INTERACT_DISTANCE + 0.5, INTERACT_DISTANCE + 2) - dist);
+              var endPosVector = new THREE.Vector3().addVectors(startPosVector, mouseRepelVector);
+              animationQueue.push([i, 0, startPosVector, endPosVector]);
+              objetArray[i][1] = true;
+            }
+          }
+        }
+
+        for (var i = 0; i < animationQueue.length; i++) {
+          var obj = objetArray[animationQueue[i][0]][0];
+          var ani_frame = animationQueue[i][1];
+          var startPosVector = animationQueue[i][2];
+          var endPosVector = animationQueue[i][3];
+          var curPosVector = new THREE.Vector3();
+          var frac = 1 - Math.abs(ani_frame - (ANIMATION_FRAME_LENGTH / 2)) / (ANIMATION_FRAME_LENGTH / 2);
+          frac = easeOutQuad(frac);
+          curPosVector.lerpVectors(startPosVector, endPosVector, frac);
+
+          obj.position.x = curPosVector.x;
+          obj.position.y = curPosVector.y;
+          obj.position.z = curPosVector.z;
+          animationQueue[i][1] += 1;
+        }
+
+        mouse = new THREE.Vector3(10000, 10000, -2);
+        mouseScaled = new THREE.Vector3(10000, 10000, -2);
+
+        renderer.render(scene, camera);
+      }
+
+      function onWindowResize() {
+        SCREEN_HEIGHT = Math.min(window.innerWidth, window.innerHeight);
+        SCREEN_WIDTH = SCREEN_HEIGHT;
+        SCREEN_ASPECT_RATIO = SCREEN_WIDTH / SCREEN_HEIGHT;
+        camera.aspect = SCREEN_ASPECT_RATIO;
+        camera.updateProjectionMatrix();
+        renderer.setSize(SCREEN_WIDTH, SCREEN_HEIGHT);
+        console.log(SCREEN_WIDTH + "x" + SCREEN_HEIGHT)
+      }
+
+      function onDocumentMouseMove(event) {
+
+        var rect = canvas.getBoundingClientRect();
+
+        mouse.x = event.clientX - rect.left;
+        mouse.y = event.clientY - rect.top;
+
+        mouseScaled.x = mouse.x * viewWidth / SCREEN_WIDTH - viewWidth / 2;
+        mouseScaled.y = -mouse.y * viewHeight / SCREEN_HEIGHT + viewHeight / 2;
+
+      }
+
+      function sigmoid(t) {
+        return 1 / (1 + Math.pow(Math.E, -t));
+      }
+
+      // no easing, no acceleration
+      function linear(t) {
+        return t;
+      }
+      // accelerating from zero velocity
+      function easeInQuad(t) {
+        return t * t;
+      }
+      // decelerating to zero velocity
+      function easeOutQuad(t) {
+        return t * (2 - t);
+      }
+      // acceleration until halfway, then deceleration
+      function easeInOutQuad(t) {
+        return t < .5 ? 2 * t * t : -1 + (4 - 2 * t) * t;
+      }
+      // accelerating from zero velocity 
+      function easeInCubic(t) {
+        return t * t * t;
+      }
+      // decelerating to zero velocity 
+      function easeOutCubic(t) {
+        return (--t) * t * t + 1;
+      }
+      // acceleration until halfway, then deceleration 
+      function easeInOutCubic(t) {
+        return t < .5 ? 4 * t * t * t : (t - 1) * (2 * t - 2) * (2 * t - 2) + 1;
+      }
+      // accelerating from zero velocity 
+      function easeInQuart(t) {
+        return t * t * t * t;
+      }
+      // decelerating to zero velocity 
+      function easeOutQuart(t) {
+        return 1 - (--t) * t * t * t;
+      }
+      // acceleration until halfway, then deceleration
+      function easeInOutQuart(t) {
+        return t < .5 ? 8 * t * t * t * t : 1 - 8 * (--t) * t * t * t;
+      }
+      // accelerating from zero velocity
+      function easeInQuint(t) {
+        return t * t * t * t * t;
+      }
+      // decelerating to zero velocity
+      function easeOutQuint(t) {
+        return 1 + (--t) * t * t * t * t;
+      }
+      // acceleration until halfway, then deceleration 
+      function easeInOutQuint(t) {
+        return t < .5 ? 16 * t * t * t * t * t : 1 + 16 * (--t) * t * t * t * t;
+      }
+
+      //Event Handlers
+      window.addEventListener("resize", onWindowResize);
+
+
+      init();
+      animate();
+
+    }
+
+    ThreeJSCanvas(1);
+  </script>
+</body>
+<!-- layui -->
+<script type="text/javascript" src="static/home/lib/layui/layui.all.js"></script>
+
+</html>

+ 245 - 0
public/static/home/css/index.css

@@ -0,0 +1,245 @@
+html {
+    margin: 0;
+    padding: 0;
+}
+
+html,
+body {
+    width: 100%;
+    height: 100%;
+    margin: 0px;
+    padding: 0px;
+    font-family: 'Lato', sans-serif;
+    font-size: 16px;
+}
+
+.social-icon a {
+    position: fixed;
+    background: white;
+    color: white;
+    display: inline-block;
+    width: 100px;
+    height: 100px;
+    transform: translate(-50%, -50%) rotate(45deg);
+    transition: .15s ease;
+    z-index: 30;
+}
+
+.social-icon i {
+    position: absolute;
+    font-size: 1.8em;
+    pointer-events: none;
+    z-index: 1000;
+}
+
+.social-icon:hover a {
+    transform: translate(-50%, -50%) rotate(45deg) scale(1.05);
+}
+
+.youtube a {
+    top: 100%;
+    left: 0%;
+    box-shadow: 0px 0px 15px 5px rgba(230, 33, 23, 0.5);
+}
+
+.youtube i {
+    left: 8px;
+    bottom: 8px;
+    color: #E62117;
+}
+
+.github a {
+    top: 100%;
+    left: 100%;
+    box-shadow: 0px 0px 15px 3px rgba(126, 126, 126, 0.5);
+}
+
+.github i {
+    right: 8px;
+    bottom: 8px;
+}
+
+#canvas-container-1 {
+    height: 100%;
+    width: 80%;
+    margin: 0 auto;
+}
+
+#canvas-1 {
+    display: block;
+    position: relative;
+    top: 50%;
+    left: 50%;
+    transform: translate(-50%, -50%);
+}
+
+#site-link {
+    color: #0099ff;
+    display: inline-block;
+    position: fixed;
+    bottom: 4%;
+    left: 50%;
+    transform: translate(-50%, 0%);
+    font-variant: small-caps;
+}
+
+body {
+    background: url(../../home/images/bg_1.jpg);
+    background-size: cover;
+}
+
+.fn_1 {
+    width: 200px;
+    height: 170px;
+    background: url(../../home/images/fn_1.png) no-repeat;
+    background-size: 100%;
+}
+
+.fn_1:hover {
+    background: url(../../home/images/fn_1_h.png) no-repeat;
+    background-size: 100%;
+}
+
+.fn_2 {
+    width: 200px;
+    height: 170px;
+    background: url(../../home/images/fn_3.png) no-repeat;
+    background-size: 100%;
+}
+
+.fn_2:hover {
+    background: url(../../home/images/fn_3_h.png) no-repeat;
+    background-size: 100%;
+}
+
+.fn_3 {
+    width: 200px;
+    height: 170px;
+    background: url(../../home/images/fn_2.png) no-repeat;
+    background-size: 100%;
+}
+
+.fn_3:hover {
+    background: url(../../home/images/fn_2_h.png) no-repeat;
+    background-size: 100%;
+}
+
+.fn_4 {
+    width: 200px;
+    height: 170px;
+    background: url(../../home/images/fn_4.png) no-repeat;
+    background-size: 100%;
+}
+
+.fn_4:hover {
+    background: url(../../home/images/fn_4_h.png) no-repeat;
+    background-size: 100%;
+}
+
+.fn_5 {
+    width: 200px;
+    height: 170px;
+    background: url(../../home/images/fn_5.png) no-repeat;
+    background-size: 100%;
+}
+
+.fn_5:hover {
+    background: url(../../home/images/fn_5_h.png) no-repeat;
+    background-size: 100%;
+}
+
+.sci-wheel {
+    position: absolute;
+    top: 0;
+    right: 0;
+    width: 100px;
+}
+
+.header {
+    width: 100%;
+    height: 100px;
+    line-height: 100px;
+    padding: 0 40px;
+    background: rgba(0, 0, 0, 0.3);
+}
+
+.header img {
+    float: left;
+    margin: 27px 10px;
+    width: 60px;
+}
+
+.header p {
+    float: left;
+    font-size: 30px;
+    color: white;
+    letter-spacing: 3px;
+}
+
+.header .home-btn {
+    float: left;
+    margin-top: 20px;
+    width: 74px;
+    height: 74px;
+    border: 1px solid #102262;
+    border-radius: 5px;
+    background: url(../../home/images/login/icon.png) no-repeat center center;
+    background-size: 45% 45%;
+    cursor: pointer;
+}
+
+.center {
+    position: absolute;
+    top: -50px;
+    bottom: 0;
+    left: 0;
+    right: 0;
+    margin: auto;
+    width: 930px;
+    height: 500px;
+    z-index: 999;
+    background: rgba(5, 19, 44, 0.6);
+}
+
+.center .list {
+    display: block;
+    float: left;
+    margin: 60px 29px;
+}
+
+.center .list:nth-child(1) {
+    position: relative;
+    left: 75px;
+    top: 60px;
+}
+
+.center .list:nth-child(2) {
+    position: relative;
+    left: 80px;
+    top: 0;
+}
+
+.center .list:nth-child(3) {
+    position: relative;
+    left: 85px;
+    top: 60px;
+}
+
+.center .list:nth-child(4) {
+    position: relative;
+    left: -187px;
+    top: -145px;
+}
+
+.center .list:nth-child(5) {
+    position: relative;
+    top: -145px;
+    left: 606px;
+}
+
+.center .list p {
+    text-align: center;
+    color: #00BAF1;
+    font-size: 35px;
+    margin-top: 190px;
+}

+ 111 - 0
public/static/home/css/lib.css

@@ -0,0 +1,111 @@
+/* CSS Document */
+/**
+* +----------------------------------------------------------
+* 主样式
+* +----------------------------------------------------------
+*/
+*{
+	-webkit-box-sizing: border-box;
+	-moz-box-sizing: border-box;
+	box-sizing: border-box;
+	margin: 0;
+	padding: 0;
+	font-family: 微软雅黑;
+	letter-spacing: 1px;
+}
+html,body{
+	width: 100%; height: 100%;
+	overflow: hidden;
+	font-size: 14px;
+}
+
+li{
+	list-style: none;
+}
+a{
+	display: block;
+}
+a:hover{
+	color: #df621e;
+	-webkit-transition: all 0.2s ease-in-out;
+}
+
+iframe{
+	border: 0; width: 100%; height: 100%;
+}
+.pull-left{ float: left; }
+.pull-right{ float: right; }
+
+.show{ display: block; }
+.hide{ display: none; }
+
+.i-bold{
+	font-weight: bolder;
+}
+/*字体颜色*/
+.i-green{ color:#00c851 !important;}
+.i-yellow{ color:#e7592b !important;}
+.i-red{ color:#d90000 !important; font-weight: border;}
+.i-blue{ color:#2292ef !important;}
+.i-lightblue{ color:#00a5e0 !important;}
+.i-gray{ color:#6c6c6e !important;}
+
+/*背景颜色*/
+.bg-green{ background-color:#00c851 !important;}
+.bg-yellow{ background-color:#e7592b !important;}
+.bg-red{ background-color:#d90000 !important;}
+.bg-blue{ background-color:#2292ef !important;}
+.bg-white{ background-color: white !important;}
+.bg-gray{ background-color: #6c6c6e !important;}
+
+/*渐变色*/
+.shade-white{
+	display: block;
+	background-image:url(../../home/images/shade/white.png);
+	background-repeat:repeat-x;
+	background-size: 100% 100%;
+	background-position: 0 0;
+}
+.shade-menu{
+	display: block;
+	background-image:url(../../home/images/shade/menu.png);
+	background-repeat:repeat-x;
+	background-size: 100% 100%;
+	background-position: 0 0;
+}
+
+.shadow{
+	box-shadow:0px 4px 8px rgba(0,0,0,0.3);
+}
+.shadow1{
+	background: url(../../home/images/shadow.png);
+	width: 220px; height: 15px;
+	background-size: 100%;
+	background-position: 0 0;
+	position: absolute; bottom: -15px; left: 0;
+}
+.shadow2{
+	background: url(../../home/images/shadow.png);
+	width: 100%; height: 15px;
+	background-size: 100%;
+	background-position: 0 -15px;
+	position: absolute; bottom: -15px; left: 0;
+}
+
+/* 数字提示 */
+.num{
+  width: 15px; height: 15px; text-align: center; line-height: 15px;
+  border-radius: 99px;
+  color: white; font-weight: bolder;
+}
+.num-1{
+	margin-left: 5px;
+  padding: 5px 10px; text-align: center; line-height: 15px;
+  border-radius: 99px;
+  color: white; font-weight: bolder;
+}
+
+/* layui修改 */
+.layui-input-block{
+	margin-left: 0;
+}

+ 146 - 0
public/static/home/css/road.css

@@ -0,0 +1,146 @@
+/* CSS Document */
+/**
+* +----------------------------------------------------------
+* 主样式
+* +----------------------------------------------------------
+*/
+.layui-form-checkbox[lay-skin=primary]:hover i{
+  border-color: #407CD5;
+}
+.layui-form-checked[lay-skin=primary] i{
+  background-color: #407CD5;
+  border-color: #407CD5;
+}
+
+.layui-btn{
+    height: 45px;
+    line-height: 45px;
+}
+.layui-btn-normal{
+  background-color: #407CD5;
+}
+
+
+/*流星*/
+.liuxing{
+  width: 85px;
+	height: 85px;
+	position: absolute;
+	background: url(../../home/images/line.png) no-repeat;
+	background-size: contain;
+}
+.liuxing1 {
+  top: 200px;
+	left: 200px;
+}
+
+.liuxing2 {
+  top: 200px;
+	left: 50%;
+	margin-left: 200px;
+}
+
+.liuxing3 {
+  top: 100px;
+	right: 300px;
+}
+
+.liuxing4 {
+  top: 150px;
+	right: 300px;
+}
+
+.liuxingFla {
+	animation: liuxing 5s ease-in infinite;
+}
+
+.liuxingFla2 {
+	animation: liuxing2 4s ease-in infinite;
+}
+
+.liuxingFla3 {
+	animation: liuxing3 3s linear infinite;
+}
+
+.liuxingFla4 {
+	animation: liuxing4 2s linear infinite;
+}
+
+/* 流星动画 */
+@keyframes liuxing {
+	0% {
+		transform: translate(200px, -200px)
+	}
+	90% {
+		transform: translate(-180px, 180px);
+		opacity: 1;
+	}
+	100% {
+		transform: translate(-200px, 200px);
+		opacity: 0;
+	}
+}
+
+@keyframes liuxing2 {
+	0% {
+		transform: translate(200px, -200px)
+	}
+	90% {
+		transform: translate(-480px, 480px);
+		opacity: 1;
+	}
+	100% {
+		transform: translate(-500px, 500px);
+		opacity: 0;
+	}
+}
+
+@keyframes liuxing3 {
+	0% {
+		transform: translate(200px, -200px)
+	}
+	90% {
+		transform: translate(-480px, 480px);
+		opacity: 1;
+	}
+	100% {
+		transform: translate(-500px, 500px);
+		opacity: 0;
+	}
+}
+
+@keyframes liuxing4 {
+	0% {
+		transform: translate(200px, -200px)
+	}
+	90% {
+		transform: translate(-180px, 180px);
+		opacity: 1;
+	}
+	100% {
+		transform: translate(-200px, 200px);
+		opacity: 0;
+	}
+}
+
+/*菜单*/
+.moveUpDownFla1 {
+	animation: moveUpDown 5s ease infinite;
+}
+
+.moveUpDownFla2 {
+	animation: moveUpDown 4s linear infinite;
+}
+
+/* 菜单动画 */
+@keyframes moveUpDown {
+	0% {
+		transform: translate(0px, -20px)
+	}
+	50% {
+		transform: translate(0px, 20px)
+	}
+	100% {
+		transform: translate(0px, -20px);
+	}
+}

BIN
public/static/home/images/bg_1.jpg


BIN
public/static/home/images/fn_1.png


BIN
public/static/home/images/fn_1_h.png


BIN
public/static/home/images/fn_2.png


BIN
public/static/home/images/fn_2_h.png


BIN
public/static/home/images/fn_3.png


BIN
public/static/home/images/fn_3_h.png


BIN
public/static/home/images/fn_4.png


BIN
public/static/home/images/fn_4_h.png


BIN
public/static/home/images/fn_5.png


BIN
public/static/home/images/fn_5_h.png


BIN
public/static/home/images/footer_bg.png


BIN
public/static/home/images/index-head.png


BIN
public/static/home/images/line.png


BIN
public/static/home/images/login-color.png


BIN
public/static/home/images/login_bg_1.png


BIN
public/static/home/images/logo.png


BIN
public/static/home/images/sci.gif


File diff suppressed because it is too large
+ 5 - 0
public/static/home/js/stats.min.js


File diff suppressed because it is too large
+ 927 - 0
public/static/home/js/three.min.js


File diff suppressed because it is too large
+ 5 - 0
public/static/home/lib/jquery/jquery-2.1.1.min.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/css/layui.css


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/css/layui.mobile.css


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/css/modules/code.css


BIN
public/static/home/lib/layui/css/modules/layer/default/icon-ext.png


BIN
public/static/home/lib/layui/css/modules/layer/default/icon.png


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/css/modules/layer/default/layer.css


BIN
public/static/home/lib/layui/css/modules/layer/default/loading-0.gif


BIN
public/static/home/lib/layui/css/modules/layer/default/loading-1.gif


BIN
public/static/home/lib/layui/css/modules/layer/default/loading-2.gif


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/lay/modules/carousel.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/lay/modules/code.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/lay/modules/element.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/lay/modules/flow.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/lay/modules/form.js


File diff suppressed because it is too large
+ 5 - 0
public/static/home/lib/layui/lay/modules/jquery.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/lay/modules/layedit.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/lay/modules/layer.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/lay/modules/laypage.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/lay/modules/laytpl.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/lay/modules/mobile.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/lay/modules/tree.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/lay/modules/upload.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/lay/modules/util.js


File diff suppressed because it is too large
+ 2 - 0
public/static/home/lib/layui/layui.all.js


+ 1 - 1
src/layout/live/head.vue

@@ -21,7 +21,7 @@
       </div>
       <div class="superlogo">
         <div class="w_1200">
-          <a href="home">
+          <a href="/">
             <img :src="logo" />
             <span>
               吉林省计算中心科技平台

+ 4 - 4
src/views/home.vue

@@ -1,7 +1,5 @@
 <template>
-  <div id="home">
-    <p>home</p>
-  </div>
+  <div id="home"></div>
 </template>
 
 <script>
@@ -10,7 +8,9 @@ export default {
   props: {},
   components: {},
   data: () => ({}),
-  created() {},
+  created() {
+    window.location.href = 'home.html';
+  },
   computed: {},
   methods: {},
 };