浏览器存储表格宽度,适应当前用户设置

浏览器存储表格宽度,适应当前用户设置

 surverWidth(newWidth, oldWidth, column, event) {           
            setTimeout(() => {             
                // console.log(newWidth, oldWidth, column, event)
                var applyTableColWidths = []
                var applyTable = document.getElementById('applyTable')               
                var applyTableColgroup = applyTable.getElementsByTagName('colgroup')[0]
                var applyTableCol = applyTableColgroup.getElementsByTagName('col')
                for (var i = 0; i < applyTableCol.length; i++) {
                    applyTableColWidths.push(applyTableCol[i].width)
                }
                console.log(applyTableColWidths);                
                // console.log(applyTableColWidths)
                // localStorage.setItem('applyTableColWidths', JSON.stringify(applyTableColWidths))
                this.setCookie('applyTableColWidths', JSON.stringify(applyTableColWidths), 30)//把对应每列的数组宽度存到cookie里
            }, 100)
        },
        getTableColWidth() {
            var self = this
            var tableWidth = self.getCookie('applyTableColWidths')
            if (tableWidth.length!=0) {
                for (var item = 0; item < tableWidth.length; item++) {
                    self.width.push(JSON.parse(tableWidth)[item]);
                }
                console.log(self.width.length);
            }
        },
        setCookie: function (cname, cvalue, exdays) {
            var d = new Date();
            d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));
            var expires = 'expires=' + d.toUTCString();
            document.cookie = cname + '=' + cvalue + "; " + expires;
        },
        getCookie: function (cname) {
            var name = cname + '=';
            var ca = document.cookie.split(';');
            for (var i = 0; i < ca.length; i++) {
                var str = ca[i].split('=')
                if (str[0].trim() === 'applyTableColWidths') {
                    console.log("str"+str[1]);
                    return str[1];
                }
            }
            return ""
        },

data(){
width:[],
}

重要的是 @header-dragend=“surverWidth”

<el-table :data="tableData" class="product-table" border id="applyTable"
            :header-cell-style="{ 'text-align': 'center', background: '#F5F7FA' }" :cell-style="{ 'text-align': 'center' }"
            :default-sort="{ prop: 'createTime', order: 'descending' }" tooltip-effect="dark" style="width: 100%"
            @header-dragend="surverWidth">

参考博文

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

缘夏520

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值