在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5  HTML/ vue獲取寬度不準(zhǔn)確

vue獲取寬度不準(zhǔn)確

每個li元素都是動態(tài)創(chuàng)建的,寬度會根據(jù)每個li的文字多少決定,因為要橫向滾動,所以要獲取每個li的寬度來給ul賦值,我用的是better-scroll,現(xiàn)在獲取寬度的時候比實際寬度少了3個像素,但是我把li里面的i標(biāo)簽?zāi)玫粢院缶褪钦#韵率俏业拇a。

<template>
    <div>
      <div class="nav" ref="wrapper">
        <ul class="content clearfix ">
          <router-link  v-for="(item,index) in getView" :to='{path:item.path}' :key="index" tag="li" >
              {{item.name}}<i v-if='index !== 0' class="el-icon-error" @click.prevent='_removeView(item.path,index)'></i>
          </router-link>
        </ul>
      </div>
    </div>
  </template>

<script>
export default {
return {
    getView:[
        {
            "name":"首頁",
            "path":"/index"
        },
        {
            "name":"系統(tǒng)管理",
            "path":"/xtgl"
        }
    ]
  },
  methods:{
    setWidth:function(){
        this.$nextTick(() => {
            var content = this.$refs.content;
            var li = content.children;
            var width = 0;
            for( let i=0;i<li.length;i++)
            {
                width += li[i].clientWidth;
                console.log(li[i].clientWidth)
            }
            content.style.width = width +'px'; 
            
        });
    },
  }
}
</script>

回答
編輯回答
孤酒

謝邀!
本來打算直接運行一下你那個代碼的,不過看起來似乎不行。
除了clientWidth獲取可視區(qū)域?qū)挾纫酝?,還有幾個獲取寬度的屬性,例如offsetWidth,可以都試一試。

還有一個問題就是你提到了去掉里面的i標(biāo)簽獲取的寬度就正常了,那么有沒有對所有標(biāo)簽的默認(rèn)樣式進行統(tǒng)一的處理,因為很多標(biāo)簽都是有默認(rèn)樣式的。

2017年2月16日 13:54