- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在将应用程序从 ExtJS 3.x 迁移到 v4,并且由于“autoHeight”属性已被删除,因此 TabPanel 出现了一些问题。我知道如果你没有明确定义面板的高度,它被假定为“自动高度”,但这只是在一定程度上是正确的。
在 ExtJS4 中,没有设置高度的选项卡面板仍然会在选项卡面板的包含 div 上设置内联 css 高度值,这些高度是根据每个选项卡项目内容的初始高度计算的。是的,如果您更新选项卡项的任何子组件的高度,将重新计算选项卡的高度以适应它,或者如果选项卡包含原始 HTML 并且选项卡的 update() 方法用于更改该内容,它的高度再次,将被调整以适应。
无论如何,在我的应用程序中,问题是我使用 ExtJS 框架中的方法以外的方法更新这些选项卡的原始 HTML 内容,例如 jQuery.html()。由于选项卡面板没有收到内容更改的通知,因此它不会重新计算选项卡的高度值。
为了解决这个问题,我要做的就是确保标签面板的包含元素在渲染、重新渲染或其他任何东西时始终设置为 height:auto。我假设要实现这一点,我需要扩展 TabPanel,但我不知道从哪里开始覆盖哪些方法等。有什么想法吗?
最佳答案
这就是我最终要做的。这绝对不是理想的,非常hacky,但它似乎工作正常。也许有人会更好地了解我现在要完成的工作,并提出更好的实现方案:-)
Ext.define('Ext.tab.AutoHeightPanel', {
extend: 'Ext.tab.Panel',
alias: 'widget.autoheighttabs',
constructor: function(cnfg){
this.callParent(arguments);
this.initConfig(cnfg);
this.on('afterlayout', this.forceAutoHeight, this);
this.on('afterrender', this.forceAutoHeight, this);
this.on('resize', this.forceAutoHeight, this);
},
forceAutoHeight: function(){
this.getEl().applyStyles({height : 'auto', overflow : 'visible'});
this.items.each(function(item, idx, len) {
if(Ext.isDefined(item.getEl())) item.getEl().applyStyles({height : 'auto', overflow : 'visible'});
});
}
});
style
添加一个“margin-bottom”值。配置选项卡面板以防止内容与面板底部对接。
关于ExtJS4 - 扩展 Ext.tab.Panel 以防止设置高度值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8302176/
这似乎是一个基本问题,但我已经尝试了一段时间并没有找到 Pyviz Panel 的解决方案: 我试图通过单击按钮来触发函数,捕捉函数的输出并将它们打印在屏幕上所需的位置。 with output ip
我正在尝试在销售订单屏幕上创建一个智能面板,它将显示与 SOLine 库存项目相关的项目。 我在库存项目页面上添加了一个选项卡和网格,并使用 CFBSUPSale 的 DAC 创建了一个表来创建此关系
需要这个: 但是得到这个: 我需要自定义绘制矩形来执行上述操作吗?另外我需要在面板内显示一个数字。有什么想法可以解决这个问题吗? 最佳答案 不要将第三个面板(水平面板)放在其他面板之一内。一旦所有三个
我正在使用 Ext JS 4.1.1 为网页创建 GUI。我尝试创建一个组件(下面的“GeneSearchComponent”),我可以在更复杂的布局中使用它。但出于某种原因,我无法将“GeneSea
我有这个面板。它按以下顺序显示工具图标:齿轮、关闭、折叠。我想得到的图标是这样的顺序:齿轮、折叠、关闭。我想不通。当我把 collapseFirst: true 放在第一位时,collapse 就在第
我正在使用 ExtJS 4.1.1a,我正在尝试为“tabbedPane”和带有“Accordion”布局的普通面板创建一个新主题。我无法更改每个标题的颜色。也就是说选项卡和选项卡的背景以及 Acco
根据MSDN - Panel.InternalChildren Property : Classes that are derived from Panel should use this prope
我有一个 Ext.Tab,Panel,我在其中动态创建了多个选项卡。 每个选项卡都包含一个 Ext.panel.panel。我需要做的是在选项卡中添加工具提示。我试图做这样的事情: Ext.defin
我有一个带有面板标题和面板主体的 Bootstrap v3 面板。我希望用户能够单击面板标题,它将折叠/展开面板主体。我正在使用 Bootstrap 的 Collapse javascript 来执行
我正在尝试在 ExtJS 中创建一个布局,它在顶部和底部的左右部分都有一个网格,一个基本的父/子、主/详细布局: wrapper_panel panel_top [grid] panel_bott
我正在使用 Extjs 6.0 开发网络 gis和 OpenLayers 3.6.0在 MVVM 架构中。我想把 ol.map到 Ext.panel.Panel .元素主视图如下: Ext.defin
我需要在 Python 中创建一个散布矩阵。我尝试使用 scatter_matrix 来实现此目的,但我只想保留对角线上方的散点图。 我正处于真正的开始阶段(没有走得太远),当列有名称(不是默认数字)
如果您在表单上创建一个面板并将其设置为 Dock=Top,然后放下另一个面板并设置其 Dock=Fill,它可能会填满整个表单,而忽略第一个面板。更改 Tab 键顺序没有任何作用。 最佳答案 停靠布局
我正在设计一个屏幕,其中标题有一个具有某些功能的按钮。为了实现这一点,我使用了 Ext.panel.Panel 现在我想在此屏幕中的标题下方添加列。这是我的代码: var screen = Ext.c
我有一个在 Ext.panel.Panel 上扩展的类。 简化代码: Ext.define("some.namespace.MyOwnPanel", { extends: "Ext.panel
在 Bootstrap 中,如何在单击另一个面板时使面板自动折叠,以便一次只打开一个面板?我不太擅长 JavaScript。 这里是一些示例代码: Information
我有一个主 JPanel,它实现了 Scrollable 并使用了 BorderLayout。它包含一个 NORTH 只读 JEditorPane、一个带有 FlowLayout 的 CENTER J
我正在用 wxPython 开发一个 GUI。我在另一个代表 CD 容器对象的正方形(也有 wxPanel 类)内绘制一个代表 CD 对象的正方形。我想在 CDWindow 的右键菜单中有“删除这张
我在第一个 div 中有两个字段集,然后我使用面板,但我的面板从 div 上方覆盖,请看下面的屏幕截图 1.) 带有文件集和详细信息2.) 添加面板后,Panel-heading to page 覆盖
我有一个 wx.Frame,其中有一个主 wx.Panel,里面有几个小部件。我想要那里的一个按钮导致出现“帮助面板”。这个帮助面板可能是一个 wx.Panel,我希望它覆盖整个主 wx.Panel(
我是一名优秀的程序员,十分优秀!