31.15. <layout:toolTip>

toolTip构件是一个增强版的title属性,它可以实现多种提示效果,而且可以对内容进行格式化、可以展示其它内容页面,也可以以本页面的其它HTML片断做内容,它的作用已经远远超过了提示,已经具备了内容展示的功能。

31.15.1. 构件信息

表 31.36. 构件信息

Component Typeorg.operamasks.faces.component.layout.impl.UIToolTip
Component Familyorg.operamasks.faces.component.layout.impl.UIToolTip
Component Classorg.operamasks.faces.component.layout.impl.UIToolTip
Tag Classorg.operamasks.faces.webapp.layout.UIToolTipTag
Renderer Typeorg.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.15.2. 属性

表 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)
是否必须 延时求值
构件上边界距离父容器上边界的像素数

31.15.3. 示例

下面是一个简单的提示框例子,通过包含本页面的HTML片断做为提示内容,当然你必须将house.jpg这张图片下载下来。

        <div id="leftCallout" class="tip-target" style="width: 150px;">Anchor right, rich content</div>
        <layout:toolTip target="leftCallout" title="&lt;a &gt; Rich Content Tooltip &lt;/a&gt;" 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>