Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Widget:Home: Difference between revisions

From LCD wiki
No edit summary
No edit summary
(2 intermediate revisions by the same user not shown)
Line 179: Line 179:
     <v-container>
     <v-container>
       <v-tabs  
       <v-tabs  
        dark
         v-model="tab"  
         v-model="tab"  
         show-arrows
         show-arrows
Line 187: Line 188:
         :background-color="themeColor"
         :background-color="themeColor"
       >
       >
         <v-tab v-for="(tabName, index) in tabs" :key="index">
         <v-tab v-for="(tabName, index) in tabs" :key="index" style="text-transform: none;">
           {{tabName}}
           {{tabName}}
         </v-tab>
         </v-tab>
Line 233: Line 234:
           el: "#<!--{$boxid|default:"home-tab"}-->",
           el: "#<!--{$boxid|default:"home-tab"}-->",
           vuetify: new Vuetify(),
           vuetify: new Vuetify(),
          mounted() {
              setTimeout(()=>{this.preloadBackimg()}, 5000);
          },
           methods: {
           methods: {
             setHoveredItem(item) {
             setHoveredItem(item) {
Line 248: Line 252:
             baseURL(){
             baseURL(){
               return /https?:\/\/[^\/]+\/(zh)(\/|$)/.test(window.location.href) ? '/zh/' : '/'
               return /https?:\/\/[^\/]+\/(zh)(\/|$)/.test(window.location.href) ? '/zh/' : '/'
            },
            preloadBackimg(){
              this.tabContents.forEach(contents => {
                contents.forEach(item => {
                  if (this.$vuetify.breakpoint.mdAndUp && item.backimg) {
                    console.log("Preload backimgs", item.backimg)
                    const img = new Image();
                    img.src = item.backimg;
                  }
                })
              })
             }
             }
           },
           },
Line 258: Line 273:
           },
           },
         });
         });
       }
       }
     }, 50);
     }, 50);

Revision as of 15:07, 30 July 2024

参数说明

  • boxid 对象id, 默认值: home-tab, 当需要在同一个页面上显示多个组件时,需要保证boxid唯一
  • themeColor 主题颜色, 默认值: #36a5e8
  • tabs 分栏名称列表
  • tabContents 分栏内容列表
    • title 要跳转的文档名称
    • subtitle: 子标题,
    • coverimg 封面图片, 默认显示, 失去鼠标焦点时显示
    • backimg 背面图片, 获取到鼠标焦点时显示

用法

{{#widget:Home
| tabs = ["HDMI显示屏", "MHS-series显示屏", "GPIO显示屏"]
| tabContents = [
    [
      { 
        title: "3.5寸HDMI显示屏", 
        subtitle: "子标题", 
        coverimg: "http://www.lcdwiki.com/images/thumb/0/09/Main_MPI3508.jpg/200px-Main_MPI3508.jpg", 
        backimg: "http://www.lcdwiki.com/zh/images/thumb/2/21/MPI3508-01.jpg/300px-MPI3508-01.jpg" },    
    ],
    [
      { 
        title: "3.5寸HDMI显示屏", 
        subtitle: "子标题", 
        coverimg: "http://www.lcdwiki.com/images/thumb/0/09/Main_MPI3508.jpg/200px-Main_MPI3508.jpg", 
        backimg: "http://www.lcdwiki.com/zh/images/thumb/2/21/MPI3508-01.jpg/300px-MPI3508-01.jpg" },    
    ],
    [
      { 
        title: "3.5寸HDMI显示屏", 
        subtitle: "子标题", 
        coverimg: "http://www.lcdwiki.com/images/thumb/0/09/Main_MPI3508.jpg/200px-Main_MPI3508.jpg", 
        backimg: "http://www.lcdwiki.com/zh/images/thumb/2/21/MPI3508-01.jpg/300px-MPI3508-01.jpg" },    
    ],
  ]
}}

效果展示