`
cuiyushan3
  • 浏览: 42219 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

wabacus中表格数据过多时的鼠标滑过提示功能(20120914)

阅读更多
wabacus中用表格展示数据时,如果文字过多的话,显示不完全
这里通过在format中将没有显示完全的数据以浮层显示,效果如图






配置文件

	<page id="onmouseover" js="/js/routine.js" css="/css/tips.css">
		<report id="report1">
			<display colselect="false">
				<col column="{sequence:1}" label="序号" width="80px"></col>
				<col column="text" label="text" width="200px"></col>
			</display>
			<sql>
				<select>
					<value>
						<![CDATA[
							select 'Wabacus是一个JavaEE快速开发框架,能快速实现完整的JavaEE功能,包括前台后台,因此与常见的框架jQuery、Extjs、Struts、Spring、Hibernate等不同,它们均只提供某一个方面的解决方案,开发人员必须组合使用它们才能完成JavaEE功能的开发。 ' as text from dual union
							select 'Wabacus则是在开发思想这个层次上进行改进,最大限度将开发人员从考虑“如何做”中解放出来,只需考虑做什么即可。因此与传统开发思想相比,相当于发生了“化学变化”,能成倍地提高JavaEE开发效率。' as text from dual order by text;
						]]>
					</value>
				</select>
			</sql>
			<format>
				<value>
				<![CDATA[
					text="<div title='"+text+"'>"+text+"</div>";
				]]>
				</value>
			</format>
		</report>
	</page>

css代码
@CHARSET "UTF-8";

.tableBorder7 {
	width: 800; solid;
	background-color: #000000;
}

TD {
	font-family: 宋体;
	font-size: 12px;
	line-height: 15px;
}

th {
	background-color: #f7f7f7;
	color: #000000;
	font-size: 12px;
	font-weight: bold;
}

th.th1 {
	background-color: #99C2F5;
}

td.TableBody7 {
	background-color: #DFECFB;
}

js代码
/* tips  begin*/
var pltsPop = null;
var pltsoffsetX = 10; // 弹出窗口位于鼠标左侧或者右侧的距离;3-12 合适
var pltsoffsetY = 15;// 弹出窗口位于鼠标下方的距离;3-12 合适
var pltsPopbg = "#FFFFEE"; // 背景色
var pltsPopfg = "#111111"; // 前景色
var pltsTitle = "";
document.write('<div id=pltsTipLayer style="display: none;position: absolute; z-index:10001"></div>');
function pltsinits() {
	document.onmouseover = plts;
	document.onmousemove = moveToMouseLoc;
}
function plts() {
	var o = event.srcElement;
	if (o.alt != null && o.alt != "") {
		o.dypop = o.alt;
		o.alt = ""
	}
	;
	if (o.title != null && o.title != "") {
		o.dypop = o.title;
		o.title = ""
	}
	;
	pltsPop = o.dypop;
	if (pltsPop != null && pltsPop != "" && typeof (pltsPop) != "undefined") {
		pltsTipLayer.style.left = -1000;
		pltsTipLayer.style.display = '';
		var Msg = pltsPop.replace(/ /g, "<br>");
		Msg = Msg.replace(/ x13/g, "<br>");
		var re = /{(.[^{]*)}/ig;
		if (!re.test(Msg))
			pltsTitle = "<font color=#ffffff>全文</font>";
		else {
			re = /{(.[^{]*)}(.*)/ig;
			pltsTitle = Msg.replace(re, "$1") + " ";
			re = /{(.[^{]*)}/ig;
			Msg = Msg.replace(re, "");
			Msg = Msg.replace("<br>", "");
		}
		var content = '<table style="FILTER:alpha(opacity=90) shadow(color=#bbbbbb,direction=135);" id=toolTipTalbe border=0><tr><td width="100%"><table class=tableBorder7 cellspacing="1" cellpadding="0" style="width:100%">'
				+ '<tr id=pltsPoptop ><th height=18 valign=bottom class=th1 ><b><p id=topleft align=left><font color=#ffffff>↖</font>'
				+ pltsTitle
				+ '</p><p id=topright align=right style="display:none">'
				+ pltsTitle
				+ '<font color=#ffffff>↗</font></b></th></tr>'
				+ '<tr><td "+attr+" class=tablebody7 style="padding-left:14px;padding-right:14px;padding-top: 6px;padding-bottom:6px;line-height:135%">'
				+ Msg
				+ '</td></tr>'
				+ '<tr id=pltsPopbot style="display:none"><th height=18 valign=bottom class=th1><b><p id=botleft align=left><font color=#ffffff>↙</font>'
				+ pltsTitle
				+ '</p><p id=botright align=right style="display:none">'
				+ pltsTitle
				+ '<font color=#ffffff>↘</font></b></th></tr>'
				+ '</table></td></tr></table>';
		pltsTipLayer.innerHTML = content;
		toolTipTalbe.style.width = Math.min(pltsTipLayer.clientWidth,
				document.body.clientWidth / 2.2);
		moveToMouseLoc();
		return true;
	} else {
		pltsTipLayer.innerHTML = '';
		pltsTipLayer.style.display = 'none';
		return true;
	}
}
function moveToMouseLoc() {
	if (pltsTipLayer.innerHTML == '')
		return true;
	var MouseX = event.x;
	var MouseY = event.y;

	var popHeight = pltsTipLayer.clientHeight;
	var popWidth = pltsTipLayer.clientWidth;
	if (MouseY + pltsoffsetY + popHeight > document.body.clientHeight) {
		popTopAdjust = -popHeight - pltsoffsetY * 1.5;
		pltsPoptop.style.display = "none";
		pltsPopbot.style.display = "";
	} else {
		popTopAdjust = 0;
		pltsPoptop.style.display = "";
		pltsPopbot.style.display = "none";
	}
	if (MouseX + pltsoffsetX + popWidth > document.body.clientWidth) {
		popLeftAdjust = -popWidth - pltsoffsetX * 2;
		topleft.style.display = "none";
		botleft.style.display = "none";
		topright.style.display = "";
		botright.style.display = "";
	} else {
		popLeftAdjust = 0;
		topleft.style.display = "";
		botleft.style.display = "";
		topright.style.display = "none";
		botright.style.display = "none";
	}
	pltsTipLayer.style.left = MouseX + pltsoffsetX + document.body.scrollLeft
			+ popLeftAdjust;
	pltsTipLayer.style.top = MouseY + pltsoffsetY + document.body.scrollTop
			+ popTopAdjust;
	return true;
}
pltsinits();

/*tips end*/
  • 大小: 9.7 KB
分享到:
评论

相关推荐

    wabacus入门教程

    3. wabacus4.1-release.zip:在此版本中,Wabacus首次引入了自动保存和恢复功能,增强了数据处理能力。 4. wabacus4.2补丁.zip:这个补丁是针对4.2版本的一些小错误进行的修复,确保用户能顺畅地使用该版本。 5. ...

    wabacus框架开发高级指南

    Wabacus框架还支持多种常用但传统开发中难以实现的功能,如输入联想、树形表格、数据行/列分组显示、主从报表、固定表头的滚动条等,用户只需在配置文件中声明即可,无需额外编码。此外,框架支持热部署,允许在无需...

    Wabacus开发实例

    除了基础的数据显示,Wabacus还提供了统计分析功能,如平均值、中位数、标准差等统计指标计算。这些统计方法可以帮助开发者从大量数据中提取关键信息,进行业务洞察和决策支持。 6. **开源优势** 作为开源项目,...

    wabacus开发指南

    2. **报表**: wabacus提供了强大的报表生成和展示能力,支持各种数据源的连接,可以创建复杂的表格、图表等形式的数据展示。开发者可以通过配置XML或JSON文件定义报表结构和样式。 3. **容器**: 容器是wabacus中的...

    Wabacus帮助文档

    Wabacus框架提供了丰富的标签,使得开发者可以便捷地在XML配置文件中定义和操作数据处理任务。例如: - `&lt;wabacus:calculate&gt;`:用于执行计算任务,可以指定计算公式和参与计算的数据源。 - `&lt;wabacus:transform&gt;`:...

    wabacus项目示例

    3. **功能演示**:视频中会详细介绍Wabacus的各项功能,包括但不限于数据处理、算法应用、界面交互等,以帮助用户了解其操作方式和工作原理。 4. **开发环境**:如果Wabacus是一个开发工具,那么设置开发环境也是...

    wabacus4.3

    综合以上信息,我们可以推测"Wabacus4.3"是一个基于Java的开源软件项目,主要涉及数据处理或计算功能。它使用了Log4j进行日志记录,自定义了JSP标签,并提供了一套默认配置供用户参考。开发者可以根据源代码进行二次...

    wabacus+springMVC+Ibatis 项目搭建

    Wabacus的报表引擎可以与各种数据源连接,支持SQL查询,提供灵活的数据过滤和排序能力,同时具备打印和导出功能,满足企业对数据可视化的需求。 **SpringMVC框架:** SpringMVC是Spring框架的一部分,它是一个基于...

    wabacus3.5-release.zip

    "依赖的第三方jar包" 文件夹很可能包含了Wabacus 3.5运行所依赖的外部Java库,这些库可能提供了额外的功能支持,如网络通信、数据处理等。"COPYING.LESSER" 和 "COPYING" 文件则是开源许可证文本,分别可能对应 ...

    Wabacus框架

    Wabacus框架采用面向声明的开发模式,可以不用编程或极少编程即可实现复杂的数据展示,数据编辑,表单处理等功能,将J2EE的开发效率提高5倍以上,代码减少60%以上。 Wabacus框架主要特点: 采用面向声明的编程思想...

    wabacus3.4-demo-mysql

    Wabacus是一个可能的开源软件或框架,其核心功能可能涉及到数据处理、计算或者数据分析。在这个特定的演示版本中,开发者已经将MySQL集成进去,使得用户能够利用MySQL来存储和管理数据,这对于那些需要处理大量结构...

    wabacus4.1依赖jar包汇总

    虽然没有提供具体的信息,但我们可以推测它可能是一个基于Java的计算或数据分析工具,因为“wabacus”一词暗示了与算盘或者计算相关的功能。在4.1版本中,开发团队可能对功能进行了增强、性能优化或错误修复,这通常...

    wabacus4.3-release

    标题 "wabacus4.3-release" 暗示我们正在处理的是 Wabacus 的一个特定版本,即 4.3 版本的发布包。这个版本可能包含了一些改进、新功能或者修复了某些问题。从描述中我们可以知道,为了减小文件大小,第三方库(lib...

    WABACUS整合Struts2、DWZ的项目源码

    修改简单改造了WABACUS3.5:实现了在Wabacus.report.config文件中设置报表文件配置XML和报表资源XML文件时文件路径和文件名称都可以使用通配符的功能,以方便以后将程序和报表文件按照模块化分放到指定的目录中。...

    Wabacus实例与教程

    在Wabacus中,开发者只需定义好数据展示、数据编辑和表单处理等需求,框架会自动处理这些任务的实现,这显著减少了编码工作量,使开发者能够更专注于业务逻辑的设计。 Wabacus的另一个亮点是其对J2EE平台的优化。在...

    wabacus实例与教程(包含API)

    通过声明式的方式,开发者可以轻松创建动态的数据表格,支持实时更新和各种数据过滤、排序、分页等操作,无需深入理解底层的DOM操作或JavaScript事件处理。 2. **数据编辑**:对于数据的编辑,Wabacus提供了强大的...

    Wabacus开发文档

    - Wabacus框架的理念是在配置文件中声明所需的功能,框架完成其余所有工作,这进一步减少了编码的工作量。 2. **处理流程的不同**: - SSH框架处理流程:Struts框架处理表示层,Hibernate框架处理数据持久化层,...

    Wabacus框架开发指南(二)

    在本章节中,我们将深入探讨Wabacus框架中的页面拦截器配置,这是框架提供的一个重要功能,允许开发者在页面加载前后执行特定的操作,从而实现如权限验证、日志记录等多种业务需求。 #### 二、页面拦截器概述 页面...

    wabacus4.1-release.zip

    描述中提到的"带补丁"意味着这个压缩包不仅包含Wabacus 4.1的主要程序,还可能包括一个或多个修复错误或增强功能的更新。补丁通常是开发者为解决已知问题或提升软件性能而发布的小型更新文件。"patch2 for wabacus...

Global site tag (gtag.js) - Google Analytics