jQuery   发布时间:2022-04-19  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jquery – SlickGrid 100%的父母身高?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图使用 SlickGridjQuery Layout UI,我想要SlickGrid占据其父窗格的100%的高度.

问题是,当SlickGrid被实例化时,它没有行(我的ajax接口的一部分稍后在数据中加载,而不是在页面加载中),所以高度认设置为像1px(加上标题的高度).当我稍后加载数据时,我看不到任何行.

我已经尝试将SlickGrid DOM元素设置为height:100%;但是没有做任何事情.如何强制SlickGrid画布占用其所在窗格的100%高度,即使它的行数更少?

解决方法

我结束了使用 jQuery PubSub,UI Layout的访问器方法和SlickGrid的resizeCanvas()方法的组合.它似乎工作得很好.

注意:我的项目已经在使用pubsub,我使用RequireJS加载我的模块.

所以,在我的网格模块文件中,我订阅一个方法来接收它所在窗格的新的innerHeight,将它保存到一个局部变量中,然后调用我的resize();功能

$.subscribe("units/set_grid_height",function (new_height) {
  grid_opts.height = new_height;
  resize();
});

// ...

// grid = the jQuery element that represents the SlickGrid
// slick = the instantiated slickgrid
function resize() {
  grid.css('height',grid_opts.height);
  slick.resizeCanvas();
}

然后,在我的init js文件(其中定义了布局)中,我设置了初始状态的正确发布,每次中心窗格更改时:

layout = $('body').layout({
  center: { 
    onresize: function (name,el,state,opts,layout_name) { 
      $.publish("units/set_grid_height",[state.innerHeight]);
    }
  }
});

$.publish("units/set_grid_height",[layout.state.center.innerHeight]);

这似乎完全是我想要的.我知道这不是一般的解决方案,但它看起来不像SlickGrid可以做到这一切都是自己的.

大佬总结

以上是大佬教程为你收集整理的jquery – SlickGrid 100%的父母身高?全部内容,希望文章能够帮你解决jquery – SlickGrid 100%的父母身高?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。