问题非常重要。
如果您使用IE9 转到http://flexigrid.info/ ,并浏览“示例2 ”部分,并且列在可见位置调整大小,则会显示激活水平滚动条。然后你将行悬停在行中,体验Flexigrid大小的增长。我没有经历IE7和IE8,只有IE9。这个问题有高度:自动配置。我还没找到解决方案。请帮帮我!
答案 0 :(得分:2)
实际上,@ Szenti发布的解决方案只适用于页面上的1个flexigrid,如果有多个,它只会获取它创建的第一个bDiv的高度值并将修复应用于所有。
我认为我修改后的版本适用于一次在页面上有很多灵活键的情况。
ie9Fix: function() {
var bDivH = $(this.bDiv).height();
var bDivTH = $('table', this.bDiv).height();
if(bDivH != bDivTH && p.height=='auto') {
$(".bDiv").css({height: bDivTH + 18});
}
},
答案 1 :(得分:1)
我有同样的问题。感谢@Szenti的答案,然而,一旦这个到位,我就会在表格中的结果通过AJAX重新生成时调整flexigrid。这出现在最新的Chrome,Firefox和IE7 / 8中。
所以我添加了一个(有些人会说脏)浏览器嗅探混合。
全球变量:
var ie9 = false;
if ($.browser.msie && parseInt($.browser.version, 10) == 9) {
ie9 = true;
}
然后调用@Szanti的方法我将其包装在:
if (ie9) {
this.ie9Fix();
}
现在适用于所有浏览器。
答案 2 :(得分:0)
解决方案:
您必须编辑flexigrid js。使用以下命令附加g对象:
ie9Fix: function() {
if($(".bDiv").height() != $(".bDiv table").height() && p.height=='auto') {
$(".bDiv").css({height: $(".bDiv table").height() + 18});
}
},
你必须在2个地方调用ie9Fix功能
在g.addRowProp()中你必须写一个新事件:
.mouseleave(函数(){ g.ie9Fix(); })
就是这样!