//表格颜色处理:-------------------------------------------------START
/*
说明:
$(function() {
_tableColorDecorator.initTableColor(tblIdArr, colorArr, captionRowspan, enableClickEvent, clickCount, clickColor);
});
tblIdArr: 要加色的table的id数组["table_id1", "table_id2"]
colorArr: 颜色数组[],依次是:表头颜色,偶数行,奇数行,mouseover,传""将使用默认颜色
captionRowspan:表头的行数,
enableClickEvent: 是否开启点击事件, 默认关闭
clickCount:传 1/2/"", 单击,双击,不启用
clickColor:颜色值,“”时候用默认颜色
*/
var _tableColorDecorator = {
captionColor: "#6492DD",
evenColor: "#F11FFF",
oddColor: "#aaFFFF",
mouseoverColor: "#FF1111",
clickColor: "FFFF11",
tmpColor: "#FFFFFF",
$clickedTr: null,
tmpClickColor: "#FFFFFF",
enableClickEvent: false,
clickCount: 1,
setCaptionTrColor: function($tbl, captionRowspan) {
$tbl.find("tr:lt(" + (captionRowspan) + ")").css("backgroundColor", _tableColorDecorator.captionColor);
},
setContentTrColor: function($tbl, captionRowspan) {
$tbl.find("tr:gt(" + (captionRowspan - 1) + "):even").css("backgroundColor", _tableColorDecorator.evenColor);
$tbl.find("tr:gt(" + (captionRowspan - 1) + "):odd").css("backgroundColor", _tableColorDecorator.oddColor);
},
bindEventHandler: function($tbl, captionRowspan) {
var $contentTrs = $tbl.find("tr:gt(" + (captionRowspan - 1) + ")");
$contentTrs.bind("mouseover", function() {
if(_tableColorDecorator.$clickedTr == null ||
(_tableColorDecorator.$clickedTr && _tableColorDecorator.$clickedTr.get(0).rowIndex != this.rowIndex)) {
_tableColorDecorator.tmpColor = $(this).css("backgroundColor");
$(this).css("backgroundColor", _tableColorDecorator.mouseoverColor);
}
});
$contentTrs.bind("mouseout", function() {
if(_tableColorDecorator.$clickedTr == null ||
(_tableColorDecorator.$clickedTr && _tableColorDecorator.$clickedTr.get(0).rowIndex != this.rowIndex)) {
$(this).css("backgroundColor", _tableColorDecorator.tmpColor);
}
});
if(_tableColorDecorator.enableClickEvent) {
var tmpEventName = _tableColorDecorator.clickCount == 1 ? "click" : "dblclick";
$contentTrs.bind(tmpEventName, function() {
if(_tableColorDecorator.$clickedTr == null) {
_tableColorDecorator.tmpClickColor = _tableColorDecorator.tmpColor;
$(this).css("backgroundColor", _tableColorDecorator.clickColor);
_tableColorDecorator.$clickedTr = $(this);
} else {
if(_tableColorDecorator.$clickedTr.get(0).rowIndex == this.rowIndex) {
$(this).css("backgroundColor", _tableColorDecorator.tmpClickColor);
_tableColorDecorator.$clickedTr = null;
} else {
_tableColorDecorator.$clickedTr.css("backgroundColor", _tableColorDecorator.tmpClickColor);
_tableColorDecorator.tmpClickColor = _tableColorDecorator.tmpColor;
$(this).css("backgroundColor", _tableColorDecorator.clickColor);
_tableColorDecorator.$clickedTr = $(this);
}
}
});
}
},
initVar: function(colorArr, enableClickEvent, clickCount, clickColor){
if(colorArr && colorArr.length == 4) {
_tableColorDecorator.captionColor = colorArr[0];
_tableColorDecorator.evenColor = colorArr[1];
_tableColorDecorator.oddColor = colorArr[2];
_tableColorDecorator.mouseoverColor = colorArr[3];
}
if(enableClickEvent && enableClickEvent != "") _tableColorDecorator.enableClickEvent = enableClickEvent;
if(clickCount && clickCount != "") _tableColorDecorator.clickCount = clickCount;
if(clickColor && clickColor != "") _tableColorDecorator.clickColor = clickColor;
},
initTableColor: function(tblIdArr, colorArr, captionRowspan, enableClickEvent, clickCount, clickColor) {
_tableColorDecorator.initVar(colorArr, enableClickEvent, clickCount, clickColor);
for(var i = 0; i < tblIdArr.length; i++) {
$tbl = $("#" + tblIdArr[i]);
if($tbl) {
_tableColorDecorator.setCaptionTrColor($tbl, captionRowspan);
_tableColorDecorator.setContentTrColor($tbl, captionRowspan);
_tableColorDecorator.bindEventHandler($tbl, captionRowspan);
}
}
}
}
//表格颜色处理:-------------------------------------------------END
详细解决方案
jQuery报表颜色:奇偶显示,鼠标悬停,点击固定颜色
热度:197 发布时间:2012-10-23 12:12:22.0
相关解决方案
- jquery 获取jsp页面的id解决方法
- jquery,二维数组取值。解决办法
- 求jquery.form.js+jquery.validate.min.js 用ajax提交表单的代码范例
- jquery 提交form表单不用插件的那种 如何提交
- jquery ajax回传没有值,该怎么处理
- jquery easyUI datagrid struts2有关问题
- jquery form 有关问题
- springmvc jquery ajax 提交复杂对象,415异常解决办法
- 应用Struts2 与 jquery,ajax验证用户注册,不用从数据库获取数据
- jquery ajax select解决方法
- jquery ajax返回值的有关问题
- jquery 的bind里面能不能获得返回值呢? 对小弟我很难的有关问题啊
- java+jquery easy ui + json + struts分页例子
- jquery easyui分页效率有关问题
- jquery 如何获得动态添加后的子元素个数?
- 关于Struts2 jQuery Plugin的 Result,该如何处理
- Jquery 点击按钮实现图片翻页,该如何解决
- Jquery+json解决思路
- jquery post有关问题
- 求大神解决偏题 - jquery ajax
- jquery ui taps有关问题,求解!
- jquery easyui 如何设置标题列居左,里面的数据列居右
- jquery 表格插件tablesorter的表头有多行和colspan不能排序有关问题
- jquery-easyui中的datetimebox 哪位高手用过?如何改变日期格式?
- jquery easyui treegrid 级联勾选跟点击行不自动勾选checkbox
- jquery.load(*json) 解析不已。求帮忙
- jquery 获取某列的值,该如何处理
- jquery 如何实现自动填充···求解···
- jquery-easyui datagrid ie不支持怎么处理?
- jQuery.get()的回调函数不执行,应用了struts2,spring解决方案