javascript基於jQuery的表格懸停變色/恢複,表格點擊變色/恢複,點擊行選Checkbox

來源:互聯網
上載者:User

// 版本: 1.0
// 日期: 2007/08/01
// 備忘: 需要jQuery庫
// 參考: Dodo(tableRowCheckboxToggle) 和 softcomplex(tigra_tables)

function Kin_Tables(
Kin_Table_GetTableMethod, //得到Table的方法 同$()功能 必選參數
Kin_Table_Header_Offset, //從前起忽略多少行 選擇性參數
Kin_Table_Footer_Offset, //從後起忽略多少行 選擇性參數
Kin_Table_Odd_Style, //奇數行樣式 選擇性參數
Kin_Table_Even_Style, //偶數行樣式 選擇性參數
Kin_Table_Hover_Style, //滑鼠移至上方樣式 選擇性參數
Kin_Table_Click_Style //滑鼠點擊樣式 選擇性參數
){

$(function(){
var Kin_Table_Config = [];
Kin_Table_Config.GetTableMethod=(Kin_Table_GetTableMethod?Kin_Table_GetTableMethod:".Kin_Table");
Kin_Table_Config.Header_Offset=(!isNaN(Kin_Table_Header_Offset)?Kin_Table_Header_Offset:0);
Kin_Table_Config.Footer_Offset=(!isNaN(Kin_Table_Footer_Offset)?Kin_Table_Footer_Offset:0);
Kin_Table_Config.Odd_Style=(Kin_Table_Odd_Style?Kin_Table_Odd_Style:"odd");
Kin_Table_Config.Even_Style=(Kin_Table_Even_Style?Kin_Table_Even_Style:"even");
Kin_Table_Config.Hover_Style=(Kin_Table_Hover_Style?Kin_Table_Hover_Style:"over");
Kin_Table_Config.Click_Style=(Kin_Table_Click_Style?Kin_Table_Click_Style:"clicked");

var Kin_Table = $(Kin_Table_Config.GetTableMethod+" tr:nth-child(n+"+eval(Kin_Table_Config.Header_Offset+1)+")");

Kin_Table.each(function(i,row){
if (i>=Kin_Table.length-Kin_Table_Config.Footer_Offset) return false;
var Kin_Table_Row_Checkbox = $(row).find(":checkbox");
bChecked = false;
$(row).addClass(i%2==0?Kin_Table_Config.Odd_Style:Kin_Table_Config.Even_Style)
$(row).hover(
function(){$(this).addClass(Kin_Table_Config.Hover_Style);},
function(){$(this).removeClass(Kin_Table_Config.Hover_Style);
});
$(row).click(function(){
$(this).toggleClass(Kin_Table_Config.Click_Style);
Kin_Table_Row_Checkbox.each(function(){
this.checked=$(row).hasClass(Kin_Table_Config.Click_Style);
});
});
Kin_Table_Row_Checkbox.each(function(){
if(this.checked){
bChecked = true;
return false;
}
});
if (bChecked) {
$(row).addClass(Kin_Table_Config.Click_Style);
Kin_Table_Row_Checkbox.each(function(){
this.checked = true;
});
}else{
$(row).removeClass(Kin_Table_Config.Click_Style);
}
});
});
}

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.