Difference between revisions of "Template:CPU CHINA/common JS"

Line 1: Line 1:
// 菜单页
+
@font-face {
var header = new Vue({
+
   font-family: MONTSERRAT-BLACK1;
   el: "#header",
+
  src: url("https://static.igem.org/mediawiki/2021/0/04/T--CPU_CHINA--MONTSERRAT-BLACK1.woff")
  data: {
+
     format("woff");
    menu: "https://static.igem.org/mediawiki/2021/2/22/T--CPU_CHINA--face.png", //菜单按钮
+
}
    isOpen: false, //背景变化
+
    classA: false, //一级菜单是否打开
+
    classB: false, //二级菜单是否打开
+
    isActive: "", //背景变色
+
    isActiveA: -1, //一级菜单悬停效果
+
    isActiveB: -1, //二级菜单悬停效果
+
    open: false, //菜单是否是打开状态
+
    clickon: true, //鼠标是否位于菜单上
+
    ifon: true, //离开是否会关闭按钮
+
    // 一级菜单列表
+
    classList: ["Project", "Parts", "Model", "Human Practices", "Team"],
+
    // 二级菜单刘表
+
    classList2: [
+
      [
+
        {
+
          text: "Description",
+
          url: "",
+
          num: 0,
+
        },
+
        {
+
          text: "Design",
+
          url: "",
+
          num: 1,
+
        },
+
        {
+
          text: "Proof of Concept",
+
          url: "",
+
          num: 2,
+
        },
+
        {
+
          text: "Proposed Implementation",
+
          url: "",
+
          num: 3,
+
        },
+
        {
+
          text: "Art Design",
+
          url: "",
+
          num: 4,
+
        },
+
        {
+
          text: "Lab",
+
          url: "",
+
          num: 5,
+
        },
+
        {
+
          text: "General Safety",
+
          url: "",
+
          num: 6,
+
        },
+
      ],
+
      [
+
        {
+
          text: "Parts Overview",
+
          url: "",
+
          num: 0,
+
        },
+
        {
+
          text: "Contributions",
+
          url: "",
+
          num: 1,
+
        },
+
        {
+
          text: "Engineering Success",
+
          url: "",
+
          num: 2,
+
        },
+
        {
+
          text: "Improvement",
+
          url: "",
+
          num: 3,
+
        },
+
      ],
+
      [
+
        {
+
          text: "Summary",
+
          url: "",
+
          num: 0,
+
        },
+
        {
+
          text: "🍄Mathematical Modeling",
+
          url: "",
+
          num: 1,
+
        },
+
        {
+
          text: "🌿Molecular Modeling",
+
          url: "",
+
          num: 2,
+
        },
+
      ],
+
      [
+
        {
+
          text: "Summary",
+
          url: "",
+
          num: 0,
+
        },
+
        {
+
          text: "Integrated Human Practices",
+
          url: "",
+
          num: 1,
+
        },
+
        {
+
          text: "Education and Public Engagement",
+
          url: "",
+
          num: 2,
+
        },
+
      ],
+
      [
+
        {
+
          text: "Members",
+
          url: "https://2021.igem.org/Team:CPU_CHINA/Team/Members",
+
          num: 0,
+
        },
+
        {
+
          text: "Attributions",
+
          url: "",
+
          num: 1,
+
        },
+
        {
+
          text: "Collaboration",
+
          url: "",
+
          num: 2,
+
        },
+
        {
+
          text: "Cartnership",
+
          url: "",
+
          num: 3,
+
        },
+
      ],
+
    ],
+
  },
+
  methods: {
+
    // 鼠标悬停到菜单按钮上
+
    mouseover() {
+
      if (!this.open) {
+
        this.menu =
+
          "https://static.igem.org/mediawiki/2021/9/91/T--CPU_CHINA--zheng.gif";
+
        this.isOpen = true;
+
        this.isActive = "menu";
+
        setTimeout(() => {
+
          this.open = true;
+
          this.classA = true;
+
          this.menu =
+
            "https://static.igem.org/mediawiki/2021/a/a4/T--CPU_CHINA--.png";
+
        }, 1100);
+
      }
+
    },
+
    // 关闭菜单
+
     close() {
+
      if (this.open) {
+
        this.menu =
+
          "https://static.igem.org/mediawiki/2021/5/5b/T--CPU_CHINA--fan.gif";
+
        this.isActive = "";
+
        this.open = false;
+
        this.classB = false;
+
        this.classA = false;
+
        this.isActiveA = -1;
+
        setTimeout(() => {
+
          this.isOpen = false;
+
          this.menu =
+
            "https://static.igem.org/mediawiki/2021/2/22/T--CPU_CHINA--face.png";
+
        }, 1100);
+
      }
+
    },
+
    // 点击菜单按钮
+
    click() {
+
      if (this.open) {
+
        this.close();
+
      } else {
+
        this.mouseover();
+
      }
+
    },
+
    // 鼠标移动到菜单上
+
    on() {
+
      this.clickon = false;
+
      this.ifon = false;
+
    },
+
    // 鼠标离开菜单
+
    leave() {
+
      setTimeout(() => {
+
        if (this.clickon) {
+
          this.ifon = true;
+
          if (this.ifon && this.open) {
+
            this.close();
+
          } else {
+
            return;
+
          }
+
        }
+
      }, 3000);
+
      this.clickon = true;
+
    },
+
    // 鼠标点击空白关闭菜单
+
    ifclick() {
+
      if (this.clickon && this.open) {
+
        this.close();
+
      } else {
+
        return;
+
      }
+
    },
+
    // 鼠标点击一级菜单
+
    classAClick(index) {
+
      this.isActiveB = -1;
+
      this.isActiveA = index;
+
      this.classB = true;
+
    },
+
    // 鼠标悬停到二级菜单
+
    classBOver(num) {
+
      setTimeout(() => {
+
        this.isActiveB = num;
+
      }, 300);
+
    },
+
    // 鼠标离开二级菜单
+
    classBLeave(num) {
+
      setTimeout(() => {
+
        this.isActiveB = -1;
+
      }, 300);
+
    },
+
  },
+
});
+
  
// 页面滚动响应
+
@font-face {
var $navs = $("nav li"), // 导航
+
  font-family: MONTSERRAT-BLACKITALIC2;
   $sections = $(".section"), // 模块
+
   src: url("https://static.igem.org/mediawiki/2021/d/d4/T--CPU_CHINA--MONTSERRAT-BLACKITALIC2.woff")
  $window = $(window),
+
    format("woff");
  navLength = $navs.length - 1;
+
}
  
$window.scroll(function () {
+
@font-face {
   var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
+
   font-family: CABIN-REGULAR;
   len = navLength;
+
   src: url("https://static.igem.org/mediawiki/2021/b/b3/T--CPU_CHINA--CABIN-REGULAR.woff")
  for (; len > -1; len--) {
+
     format("woff");
    var that = $sections.eq(len);
+
}
     if (scrollTop >= that.offset().top - 10) {
+
      $navs.removeClass("current").eq(len).addClass("current");
+
      break;
+
    }
+
  }
+
});
+
  
$navs.on("click", function (e) {
+
@font-face {
   e.preventDefault();
+
  font-family: CABIN-ITALIC;
   $("html, body").animate(
+
  src: url("https://static.igem.org/mediawiki/2021/7/75/T--CPU_CHINA--CABIN-ITALIC.woff")
     {
+
    format("woff");
      scrollTop: $($(this).find("a").attr("href")).offset().top,
+
}
     },
+
 
     400
+
body {
   );
+
   background-color: #fafafa;
});
+
}
 +
 
 +
* {
 +
  box-sizing: border-box;
 +
}
 +
 
 +
#contain {
 +
  margin-top: -12px;
 +
  padding: 0 3% 10%;
 +
  width: 100%;
 +
  background-color: #fafafa;
 +
  z-index: 1;
 +
  text-align: left;
 +
  box-sizing: border-box;
 +
}
 +
 
 +
.background {
 +
  position: fixed;
 +
   width: 100%;
 +
  top: 0;
 +
  z-index: -1;
 +
  box-sizing: border-box;
 +
}
 +
 
 +
#header #title {
 +
  position: fixed;
 +
  top: 10%;
 +
  font-family: "MONTSERRAT-BLACKITALIC2";
 +
  line-height: normal;
 +
  font-weight: bolder;
 +
  font-size: 800%;
 +
  color: #fafafa;
 +
  z-index: -1;
 +
}
 +
 
 +
#header #menu {
 +
  z-index: 10;
 +
}
 +
 
 +
#header #menu #menuBack {
 +
  position: fixed;
 +
  width: 100%;
 +
  height: 100%;
 +
  box-sizing: border-box;
 +
  z-index: 10;
 +
}
 +
 
 +
#header #menu .menu {
 +
  background: #000000ad;
 +
}
 +
 
 +
#header #menu #logo {
 +
  position: fixed;
 +
  top: 6vmin;
 +
  left: 1vmin;
 +
  width: 25vmin;
 +
  z-index: 11;
 +
}
 +
 
 +
#header #menu #menuImg {
 +
  position: fixed;
 +
  top: 6vmin;
 +
  right: 1vmin;
 +
  width: 15vmin;
 +
  z-index: 11;
 +
}
 +
 
 +
#header #menu .class {
 +
  position: fixed;
 +
  top: 22vmin;
 +
  z-index: 11;
 +
}
 +
 
 +
#header #menu .class li {
 +
  padding: 6% 0;
 +
  margin: 2vmin;
 +
  border-radius: 30px;
 +
  text-align: center;
 +
  font-family: "MONTSERRAT-BLACKITALIC2";
 +
  font-size: 1.5em;
 +
  font-weight: bolder;
 +
}
 +
 
 +
#header #menu #class-a {
 +
  right: 1vmin;
 +
}
 +
 
 +
#header #menu #class-a li {
 +
  margin-right: 3vmin;
 +
  width: 35vmin;
 +
  background-color: #fafafa;
 +
  border: #fafafa solid 3px;
 +
}
 +
 
 +
#header #menu #class-a li:hover {
 +
  border: #0072fe solid 3px;
 +
}
 +
 
 +
#header #menu #class-a .class-a {
 +
  background-color: #0072fe;
 +
  border: #0072fe solid 3px;
 +
  color: #fafafa;
 +
}
 +
 
 +
#header #menu #class-b {
 +
  right: 37vmin;
 +
}
 +
 
 +
#header #menu #class-b li {
 +
  border: #0072fe solid 2px;
 +
  width: 38vmin;
 +
}
 +
 
 +
#header #menu #class-b li a{
 +
     color: #FAFAFA;
 +
}
 +
 
 +
#header #menu #class-b li:active {
 +
  background-color: #0000008f;
 +
}
 +
#header #menu #class-b .class-b {
 +
  background-color: #00000047;
 +
}
 +
 
 +
footer {
 +
  position: -webkit-sticky;
 +
  left: 0;
 +
  width: 100%;
 +
  background-color: black;
 +
}
 +
 
 +
footer #sponsor {
 +
  position: relative;
 +
  top: -10px;
 +
  width: 100%;
 +
  border-radius: 10px;
 +
  -webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3),
 +
    0 0 40px rgba(0, 0, 0, 0.1) inset;
 +
  -moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3),
 +
    0 0 40px rgba(0, 0, 0, 0.1) inset;
 +
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
 +
  -o-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
 +
  z-index: 1;
 +
}
 +
 
 +
footer #connect {
 +
  position: relative;
 +
  top: -30px;
 +
  width: 100%;
 +
  height: 150px;
 +
  background-color: black;
 +
  border-radius: 10px;
 +
  -webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3),
 +
     0 0 40px rgba(0, 0, 0, 0.1) inset;
 +
  -moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3),
 +
     0 0 40px rgba(0, 0, 0, 0.1) inset;
 +
   box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
 +
  -o-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
 +
  z-index: 2;
 +
}

Revision as of 12:53, 12 September 2021

@font-face {

 font-family: MONTSERRAT-BLACK1;
 src: url("https://static.igem.org/mediawiki/2021/0/04/T--CPU_CHINA--MONTSERRAT-BLACK1.woff")
   format("woff");

}

@font-face {

 font-family: MONTSERRAT-BLACKITALIC2;
 src: url("https://static.igem.org/mediawiki/2021/d/d4/T--CPU_CHINA--MONTSERRAT-BLACKITALIC2.woff")
   format("woff");

}

@font-face {

 font-family: CABIN-REGULAR;
 src: url("https://static.igem.org/mediawiki/2021/b/b3/T--CPU_CHINA--CABIN-REGULAR.woff")
   format("woff");

}

@font-face {

 font-family: CABIN-ITALIC;
 src: url("https://static.igem.org/mediawiki/2021/7/75/T--CPU_CHINA--CABIN-ITALIC.woff")
   format("woff");

}

body {

 background-color: #fafafa;

}

  • {
 box-sizing: border-box;

}

  1. contain {
 margin-top: -12px;
 padding: 0 3% 10%;
 width: 100%;
 background-color: #fafafa;
 z-index: 1;
 text-align: left;
 box-sizing: border-box;

}

.background {

 position: fixed;
 width: 100%;
 top: 0;
 z-index: -1;
 box-sizing: border-box;

}

  1. header #title {
 position: fixed;
 top: 10%;
 font-family: "MONTSERRAT-BLACKITALIC2";
 line-height: normal;
 font-weight: bolder;
 font-size: 800%;
 color: #fafafa;
 z-index: -1;

}

  1. header #menu {
 z-index: 10;

}

  1. header #menu #menuBack {
 position: fixed;
 width: 100%;
 height: 100%;
 box-sizing: border-box;
 z-index: 10;

}

  1. header #menu .menu {
 background: #000000ad;

}

  1. header #menu #logo {
 position: fixed;
 top: 6vmin;
 left: 1vmin;
 width: 25vmin;
 z-index: 11;

}

  1. header #menu #menuImg {
 position: fixed;
 top: 6vmin;
 right: 1vmin;
 width: 15vmin;
 z-index: 11;

}

  1. header #menu .class {
 position: fixed;
 top: 22vmin;
 z-index: 11;

}

  1. header #menu .class li {
 padding: 6% 0;
 margin: 2vmin;
 border-radius: 30px;
 text-align: center;
 font-family: "MONTSERRAT-BLACKITALIC2";
 font-size: 1.5em;
 font-weight: bolder;

}

  1. header #menu #class-a {
 right: 1vmin;

}

  1. header #menu #class-a li {
 margin-right: 3vmin;
 width: 35vmin;
 background-color: #fafafa;
 border: #fafafa solid 3px;

}

  1. header #menu #class-a li:hover {
 border: #0072fe solid 3px;

}

  1. header #menu #class-a .class-a {
 background-color: #0072fe;
 border: #0072fe solid 3px;
 color: #fafafa;

}

  1. header #menu #class-b {
 right: 37vmin;

}

  1. header #menu #class-b li {
 border: #0072fe solid 2px;
 width: 38vmin;

}

  1. header #menu #class-b li a{
   color: #FAFAFA;

}

  1. header #menu #class-b li:active {
 background-color: #0000008f;

}

  1. header #menu #class-b .class-b {
 background-color: #00000047;

}

footer {

 position: -webkit-sticky;
 left: 0;
 width: 100%;
 background-color: black;

}

footer #sponsor {

 position: relative;
 top: -10px;
 width: 100%;
 border-radius: 10px;
 -webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3),
   0 0 40px rgba(0, 0, 0, 0.1) inset;
 -moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3),
   0 0 40px rgba(0, 0, 0, 0.1) inset;
 box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
 -o-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
 z-index: 1;

}

footer #connect {

 position: relative;
 top: -30px;
 width: 100%;
 height: 150px;
 background-color: black;
 border-radius: 10px;
 -webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3),
   0 0 40px rgba(0, 0, 0, 0.1) inset;
 -moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3),
   0 0 40px rgba(0, 0, 0, 0.1) inset;
 box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
 -o-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
 z-index: 2;

}