zoukankan      html  css  js  c++  java
  • js获取精确的元素宽高(普通获取高度会有误差)

    当js获取元素宽高时, 并不是一个精确的数字,如果想获取真正的宽高大致方法如下

                                var oStyle = obj.currentStyle ? obj.currentStyle : window.getComputedStyle(obj, null);
                                var realheight=parseFloat(oStyle.height));

    发现这个问题来自于jqGrid的固定列问题,当屏幕分辨率比例非100%的时候,dom元素的宽高可能会出现小数,这时候如果用clientHeight或者jq的outerHeight都无法获取小数部分,从而导致固定列出现错位的情况,大致解决方法如下:

    setFrozenColumns->jqGridAfterGridComplete.setFrozenColumns 方法下:  
    $("#" + $.jgrid.jqID($t.p.id) + " tr[role=row].jqgrow").each(function () { //20181229 bear.Tirisfal fixed forzenCol pixel percent height problem var oStyle = this.currentStyle ? this.currentStyle : window.getComputedStyle(this, null); mh.push(parseFloat(oStyle.height)); });

    当然也可以统一两者的高度来解决问题。

    当固定列的宽度出现错位的情况,需要统一原始表格和固定列的宽,也就是 1px

  • 相关阅读:
    make 实例 一 3463
    python3 中对arrow库的总结(转发)
    impala 导出CSV 或excel
    设置虚拟机IP
    centos7 tomcat9
    eclipse 创建普通maven项目
    java log4j日志配置
    java运行jar命令提示没有主清单属性
    Java 读取 .properties 配置文件
    python 机器学习多项式回归
  • 原文地址:https://www.cnblogs.com/daxiongblog/p/10193899.html
Copyright © 2011-2022 走看看