toolTip构件是一个增强版的title属性,它可以实现多种提示效果,而且可以对内容进行格式化、可以展示其它内容页面,也可以以本页面的其它HTML片断做内容,它的作用已经远远超过了提示,已经具备了内容展示的功能。
表 31.36. 构件信息
| Component Type | org.operamasks.faces.component.layout.impl.UIToolTip |
| Component Family | org.operamasks.faces.component.layout.impl.UIToolTip |
| Component Class | org.operamasks.faces.component.layout.impl.UIToolTip |
| Tag Class | org.operamasks.faces.webapp.layout.UIToolTipTag |
| Renderer Type | org.operamasks.faces.component.layout.impl.UIToolTip |
| Renderer Class(AJAX) | org.operamasks.faces.render.layout.ajax.AjaxToolTipRenderer |
+java.lang.Object
++javax.faces.component.UIComponent
+++javax.faces.component.UIComponentBase
++++org.operamasks.faces.component.layout.base.UIPanelBase
+++++org.operamasks.faces.component.layout.impl.UIPanel
++++++org.operamasks.faces.component.layout.base.UIToolTipBase
+++++++org.operamasks.faces.component.layout.impl.UIToolTip
表 31.37. 属性
| anchor | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 小三角相对提示框的位置取值left、top等 | ||||
| anchorOffset | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(java.lang.Integer) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| anchor position即小三角箭头和弹出框的相对位置,它的值应根据弹出框的宽度设置。 | ||||
| anchorToTarget | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 如果设置为true,则弹出框将显示在内容框的anchor所设置的位 置外面,如果为false则根据鼠标的位置显示 | ||||
| animCollapse | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 在构件收缩时是否显示动画效果 | ||||
| animFloat | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否允许面板收缩/展开的激活. 当点击一个收缩区域的bar时,这个区域的面板就会显示成一个浮动的面板,并且当鼠标移开该区域(或者在autoHide被设置成false时,点击面板外的地方)时,面板会收缩。把animFloat设置成false可以阻止面板收缩/展开的激活 (默认值:true) | ||||
| autoHeight | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否允许构件自适应高度(默认值: false). | ||||
| autoHide | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 鼠标移开浮动面板时面板是否自动收缩 (默认值:true) | ||||
| autoLoad | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 自动引入某个文件的作为提示内容格式为{url: '***.**'} | ||||
| autoScroll | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 在内容超过构件的Size时,是否允许出现滚动条(默认值: false). | ||||
| autoWidth | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否允许构件自适应宽度 (默认值:false) | ||||
| binding | 定义类 | javax.faces.component.UIComponentBase | ||
| 类型 | javax.el.ValueExpression(javax.faces.component.UIComponent) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 一个值表达式,用于把该组件链接到一个ManagedBean的某个属性。 | ||||
| bodyStyle | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 容器内元素使用的CSS样式 | ||||
| border | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否显示面板body元素的边框(默认值:true)。默认情况下,边框是一个2px宽的内嵌边框,但当bodyBorder属性被设置成false时可以进一步修改 | ||||
| closable | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 作为TabLayout的一页时,这一页是否可以关闭 | ||||
| cmargins | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 区域内收缩的构件的margins设置, 格式为: {left: (left margin), top: (top margin), right: (right margin), bottom: (bottom margin)} | ||||
| collapseMode | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 面板的收缩模式,支持的属性值有mini,此属性只在borderLayout中起效 | ||||
| collapsed | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件的初始状态是否是收缩的(默认值:false) | ||||
| collapsible | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件是否可以收缩和展开(默认值:false) | ||||
| colspan | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Integer) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件占据的列数 | ||||
| columnWidth | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Float) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件宽度的百分比小数值 | ||||
| contentEl | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 引入本页面的ID为contentEL的内容 | ||||
| delegate | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| dismissDelay | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(java.lang.Integer) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 当鼠标在目标里面显示框自动隐藏的时间 | ||||
| draggable | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否可以拖拉 | ||||
| fit | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件是否充满父容器 | ||||
| floatable | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否允许面板漂浮 (默认值:true) | ||||
| floating | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 面板是否漂浮 (默认值:false) | ||||
| frame | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 如何渲染面板边框. 为True时用用户定义的圆角边框渲染面板, 为false时用1px宽的直角边框渲染面板 (默认值:false) | ||||
| header | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否为容器生成header。如果没有设置header属性,而设置了title属性,header会自动生成;如果设置了title属性,但header属性设置为false,则不会生成header | ||||
| headerAsText | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否在header中显示title(默认值: true). | ||||
| height | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件高度的像素值 (默认是auto) | ||||
| hideBorders | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否隐藏边框。为true时隐藏内部构件的边框, 为false时适应内部构件的边框设置 (默认值:false). | ||||
| hideCollapseTool | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否显示收缩/折叠按钮(默认false), 仅在当collapsible属性设置为true时生效 | ||||
| hideDelay | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(java.lang.Integer) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 当鼠标移出目标之后自动隐藏的延迟时间 | ||||
| html | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 显示的内容 | ||||
| iconCls | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| title前的小图标的CSS Class名称, 比如:"myIcon", 而myIcon的内容可以定义为:.myIcon {background: url(myIcon.gif);} | ||||
| id | 定义类 | javax.faces.component.UIComponentBase | ||
| 类型 | java.lang.String | |||
| 是否必须 | 否 | 延时求值 | 否 | |
| 这个组件的组件标识符。这个值在最近的命名容器类型的父组件范围内,必须是唯一的。 | ||||
| initConfig | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Object) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 初始化配置对象。取值可以是ExtConfig对象, 或String,表示一个JavaScript对象,比如:{"a": "avalue", "b":true, "c":200, "d":"var::dvalue"} 如果取值是表示一个JavaScript对象的String,则key必须用(双)引号包起来,比如"a"。 | ||||
| jsvar | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 客户端脚本使用的javascript变量名 | ||||
| layout | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 容器中要使用的布局方式. 如果没有设置,就用默认的ContainerLayout. 合法的值有: accordion, anchor, border, card, column, fit, form and table. | ||||
| lazyLoad | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 对首次不直接渲染的panel(或window)是否延时加载页面,注意此属性必须与url属性配合使用方有效。对accordionLayout、borderLayout中默认折叠的panel,cardLayout、tabLayout中默认未激活的panel以及默认不直接显示的window都可使用。 | ||||
| listeners | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 事件监听,需要客户自己编写js实现,格式为"render:renderFunc" 其中的renderFunc为自定义的js方法 | ||||
| margins | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 设置构件的margin值,格式为 {left: (left margin), top: (top margin), right: (right margin), bottom: (bottom margin)} | ||||
| maskDisabled | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 在面板disabled时,是否用直观的方式标识 (默认值:true) | ||||
| maxSize | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Integer) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件的最大Size | ||||
| minSize | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Integer) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件的最小Size | ||||
| mouseOffset | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 提示框初始显示的位置XY 不设置的话为【15,18】 | ||||
| onactivate | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件激活时执行的JavaScript代码 | ||||
| onbeforeexpand | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件展开前执行的JavaScript代码 | ||||
| region | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 该区域的布局位置,合法值有: north、south、east、west、center | ||||
| rendered | 定义类 | javax.faces.component.UIComponentBase | ||
| 类型 | boolean(boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 一个标志,指出该组件是否要在任何随后的form提交过程中被渲染或处理。 这个属性的缺省值是true。 | ||||
| rowspan | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Integer) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件占据的行数 | ||||
| shadow | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件是否显示阴影效果.该属性仅在floating属性被设置成true时有效 | ||||
| shadowOffset | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Integer) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 阴影偏离的像素数 (默认值:4).该属性仅在floating属性被设置成true时有效 | ||||
| shim | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否在需要的时候enable内框架边界 (默认值:true). 该属性仅在floating属性被设置成true时有效 | ||||
| showDelay | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(java.lang.Integer) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 鼠标移动到目标之后提示框延迟出现的时间数 | ||||
| showTitleOnCollapse | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 在构件收缩后是否显示标题 (默认值:false). 注意:该属性仅在region="north"或者region="south",属性被设置成true时有效 | ||||
| split | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否在该区域和它的邻近区域之间显示分隔条 (默认值:false). 当该属性被设置成true时,一般要设置minSize和maxSize属性 | ||||
| style | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件渲染时应用到构件的CSS风格,对应于元素的style属性 | ||||
| styleClass | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 空格分隔的CSS风格类名列表,渲染时作为元素的"class"属性 | ||||
| target | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 需要提示的目标对象,设置为目标的id | ||||
| title | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 在构件的header上显示的标题 | ||||
| titleCollapse | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否允许在单击构件的header时收缩或展开构件 (默认值:false) | ||||
| toolBarPosition | 定义类 | org.operamasks.faces.component.layout.base.UIToolTipBase | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 内置工具栏的位置,可能的取值为"top","bottom",或"both"。 | ||||
| trackMouse | 定义类 | org.operamasks.faces.component.layout.impl.UIToolTip | ||
| 类型 | javax.el.ValueExpression(boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否随鼠标移动 | ||||
| url | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件加载页面的url,建议只在accordionLayout、borderLayout、cardLayout、tabLayout、window中使用,最终会渲染成一个iframe | ||||
| width | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件宽度的像素值 (默认是auto) | ||||
| x | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Integer) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件左边界距离父容器左边界的像素数 | ||||
| y | 定义类 | org.operamasks.faces.component.layout.impl.UIPanel | ||
| 类型 | javax.el.ValueExpression(java.lang.Integer) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件上边界距离父容器上边界的像素数 | ||||
下面是一个简单的提示框例子,通过包含本页面的HTML片断做为提示内容,当然你必须将house.jpg这张图片下载下来。
<div id="leftCallout" class="tip-target" style="width: 150px;">Anchor right, rich content</div>
<layout:toolTip target="leftCallout" title="<a > Rich Content Tooltip </a>" id="content-anchor-tip" anchor="left" contentEl="content-tip" closable="true" autoHide="false" width="415"></layout:toolTip>
<div style="display:none;">
<div id="content-tip">
<ul>
<li>5 金蝶中间件</li>
<li>2 友商网</li>
<li>4 金蝶中国</li>
<li>6 金蝶国际</li>
</ul>
<div class="x-clear"></div>
<img src="house.jpg" alt="Website Thumbnail" />
</div>
</div>