javascript - 初始加载期间无法设置 table 高度

标签 javascript jquery kendo-ui kendo-treeview

我正在使用 Kendo tabstrip 和加载 Treeview (在表格内)。

我根据窗口大小设置容纳树的 table 的高度,当窗口调整大小时一切正常,但由于某种原因我无法设置 table 的高度在我的应用程序的初始加载期间。我正在调用与准备好调整窗口大小时调用的函数相同的函数,

 $(document).ready(function()

setTimeout(function() { update_size(); }, 250);
.....

但即使这样,在初始加载期间,表格的大小也没有正确调整(特别是在某些屏幕分辨率下 - 例如:1280*1024),但是当我调整屏幕大小时,表格的大小也正确调整...

    var update_size = function() {
        var height = $(this).height() - ($("#vertical").height()+30);
        $('#dictionaryTree').height(height-120);
        $('#groupTree').height(height-120);

    }
    $(window).resize(function() {
        clearTimeout(window.refresh_size);
        window.refresh_size = setTimeout(function() { update_size(); }, 250);
    });

最佳答案

这种情况经常发生,因为当您尝试设置大小时,元素仍未渲染,然后 KendoUI 进入显示元素并重新计算大小。

当您调整窗口大小时,元素已经呈现,因此没有问题。

尝试在加载页面内容和调用 KendoUI 小部件初始化后(例如,在 dataBound 事件中)调整大小。

关于javascript - 初始加载期间无法设置 table 高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14246072/

相关文章:

javascript - 从js请求查询字符串中提取值

javascript - 如何使用 Bootstrap 添加条件按钮?

jquery - 随着宽度的增加自动增加列数

javascript - 禁用输入文本访问但保持元素启用

javascript - react 渲染方法中的for循环

javascript - 隐藏/显示剑道网格​​滚动条

javascript - 替换响应中的特殊字符和空格

jquery - 引用网格上的 Kendo UI (ASP.NET MVC) 下拉列表

javascript - 在 VueJS/VuetifyJS 中复制选项卡转换之间的 WhatsApp 滑动

javascript - 将 jQuery ajax 值传递回调用 JavaScript 函数