js table操作--------table滚动条

简介:
代码:
< html >
< head >
< title > My table </ title >
< style >
.table0 
{
    height
:90%;
}


.table0 caption
{
    width
:100%;
    height
:26px;
    line-height
:26px;
    font-size
:20px;
    font-color
:black;
    font-weight
:900;
    letter-spacing
:5px;
}


.table0 thead td 
{
    text-align
:center;
    vertical-align
:middle;
    height
:20px;
    line-height
:18px;
    font-size
:14px;
    font-color
:black;
    font-weight
:bold;
    padding-top
:2px;
    padding-bottom
:2px;
    border
:#555 1px solid;
    margin
:0px;
}


.table0 tfoot td
{
    text-align
:left;
    vertical-align
:middle;
    height
:20px;
    line-height
:18px;
    font-size
:12px;
    font-color
:black;
    font-weight
:bold;
    padding-top
:2px;
    padding-bottom
:2px;
    padding-left
:12px;
    padding-right
:12px;
    border
:#555 1px solid;
}


.table0 tbody td 
{
    width
:100%;
    height
:auto;
    border
:#555 1px solid;
    padding
:0px;
    margin
:0px;
}


.table1 tbody td 
{
    text-align
:left;
    vertical-align
:middle;
    height
:20px;
    line-height
:18px;
    font-size
:14px;
    font-color
:#444;
    font-weight
:normal;
    padding-top
:2px;
    padding-bottom
:2px;
    padding-left
:12px;
    padding-right
:12px;
    border-right
:#555 1px solid;
    border-bottom
:#555 1px solid;
    overflow
:hidden;
    text-overflow
:ellipsis;
    word-break
:keep-all;
    word-wrap
:normal;
}


</ style >
< script >

function init(){
    theT
=createTable("我的收藏夹",["Group:150","Name:300","URL:200","Visited:100","Modify:100","Delete:100"]);
    
//参数说明:createTable(strCaption,colHeads)
    //strCaption 标题
    //colHeads 是一个array,每个item的格式是 名称:宽度 的字符串
    for(var i=0;i<40;i++){
        theR
=theT.insertRow();
        
for(var j=0;j<7;j++){
            theC
=theR.insertCell();
            theC.innerText
=j;
        }

    }

}



function createTable(strCaption,colHeads){
    
//参数说明:colHeads 是一个array,每个item的格式是 名称:宽度 的字符串
    //生成表格
    oTable=document.createElement("table");
    document.body.insertBefore(oTable);
    
//设置class
    oTable.className="table0";
    
    
with(oTable.style){
        tableLayout
="fixed";
        borderCollapse
="collapse"
        borderSpacing
="0px";
    }

    
//设置变量
    oTCaption=oTable.createCaption();
    oTHead
=oTable.createTHead();
    oTFoot
=oTable.createTFoot();
    
    
//生成标题
    oTCaption.innerText=strCaption;
    
    
//设置列宽
    oTHead.insertRow();
    
for(var i=0;i<colHeads.length;i++){
        tHeadName
=colHeads[i].split(":")[0];
        tHeadWidth
=isNaN(parseInt(colHeads[i].split(":")[1]))?"auto":parseInt(colHeads[i].split(":")[1]);
        theCell
=oTHead.rows[0].insertCell();
        theCell.style.width
=tHeadWidth;
    }

    theCell
=oTHead.rows[0].insertCell();
    theCell.width
=20;
    oTHead.rows[
0].style.display="none";
    
    
//生成表头
    oTHead.insertRow();
    
for(var i=0;i<colHeads.length;i++){
        tHeadName
=colHeads[i].split(":")[0];
        tHeadWidth
=isNaN(parseInt(colHeads[i].split(":")[1]))?"auto":parseInt(colHeads[i].split(":")[1]);
        theCell
=oTHead.rows[1].insertCell();
        theCell.innerText
=tHeadName;
        theCell.style.width
=tHeadWidth;
    }

    theCell
=oTHead.rows[1].insertCell();
    theCell.width
=24;
    
    
//生成表脚
    oTFoot.insertRow();
    theCell
=oTFoot.rows[0].insertCell();
    theCell.innerHTML
="<marquee scrollDelay=50 scrollAmount=2>Copy rights 2005. Hutia presents.</marquee>";
    theCell
=oTFoot.rows[0].insertCell();
    theCell.colSpan
=colHeads.length-1;
    theCell
=oTFoot.rows[0].insertCell();
    theCell.width
=20;
    
    
//生成主体
    oTable.all.tags("Tbody")[0].insertRow();
    theCell
=oTable.all.tags("Tbody")[0].rows[0].insertCell();
    theCell.colSpan
=colHeads.length+1;
    oMain
=document.createElement("DIV");
    theCell.insertBefore(oMain);
    
with(oMain.style){
        width
="100%";
        height
="100%";
        overflowY
="auto";
        overflowX
="hidden";
        margin
="0px";
        marginLeft
="-1px";
    }

    
    oTBody
=document.createElement("table");
    oMain.insertBefore(oTBody);
    oTable.oTBody
=oTBody;
    
//禁止选择
    oTCaption.onselectstart=oTHead.onselectstart=oTFoot.onselectstart=function(){return(false);}
    
    
//设置class
    oTBody.className="table1";
    
with(oTBody.style){
        width
=oTable.offsetWidth-15;
        tableLayout
="fixed";
        borderCollapse
="collapse"
        borderSpacing
="0px";
        padding
="0px";
        margin
="0px";
    }

    
    
//初始化列宽
    oTBody.insertRow();
    
for(var i=0;i<colHeads.length;i++){
        tHeadWidth
=isNaN(parseInt(colHeads[i].split(":")[1]))?"auto":parseInt(colHeads[i].split(":")[1]);
        theCell
=oTBody.rows[0].insertCell();
        theCell.style.width
=tHeadWidth;
    }

    oTBody.rows[
0].style.display="none";
    
    
return(oTBody);
}


function insertRow(){
    
var intL=oTBody.rows.length;
    theRow
=oTBody.insertRow();
    theRow.index
=intL;
    theRow.onmouseover
=rowOnMouseOver;
    theRow.onmouseout
=rowOnMouseOut;
    theRow.onclick
=rowOnClick;
    
for(var i=0;i<colHeads.length;i++){
        theCell
=theRow.insertCell();
        theCell.tabIndex
=0;
        theCell.hideFocus
=true;
        theCell.colIndex
=i;
        theCell.onmouseover
=function(){this.focus();};
        theCell.onmouseout
=cellOnBlur;
        theCell.onfocus
=cellOnFocus;
        theCell.onblur
=cellOnBlur;
    }

    theRow.cells[
0].innerText=strGroup?strGroup:"ROOT";
    theRow.cells[
1].innerText=strName?strName:"Untitled Document.";
    theRow.cells[
2].innerText=strURL?strURL:"Unspecified URL";
    theRow.cells[
3].innerHTML=strVisited?"Yes".fontcolor("red"):"Unknow";
    theRow.cells[
4].innerHTML=strModify?"Yes".fontcolor("red"):"No".fontcolor("Green");
    theRow.cells[
5].innerHTML="Delete".fontcolor("red");
}


</ script >
</ head >
< body  onload ="init();" >

</ body >
</ html >
本文转自博客园执着的笨蛋的博客,原文链接:js table操作--------table滚动条 ,如需转载请自行联系原博主。
目录
相关文章
|
19天前
|
Web App开发 JavaScript 前端开发
高性能的纯Js滚动条美化插件smooth-scrollbar
smooth-scrollbar是一款高性能的纯JavaScript滚动条美化插件。该滚动条为现代浏览器而制作,它具有高性能,自由配置,平滑滚动等特点,支持各种现代桌面浏览器和手机设备。
|
5月前
|
JavaScript
js【图解】滚动条的位置(文档与屏幕间的距离),鼠标事件距离(位置),元素距离(位置)
js【图解】滚动条的位置(文档与屏幕间的距离),鼠标事件距离(位置),元素距离(位置)
117 7
|
5月前
|
JavaScript 前端开发 索引
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(三)
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(三)
47 1
|
5月前
|
存储 JavaScript 前端开发
js/javascript 操作字符串【全】(含常用的操作字符串的lodash)
js/javascript 操作字符串【全】(含常用的操作字符串的lodash)
48 1
|
6月前
|
JavaScript vr&ar 数据库
技术笔记:Js获取当前日期时间及其它操作
技术笔记:Js获取当前日期时间及其它操作
142 1
|
5月前
|
JavaScript 前端开发 索引
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(一)
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(一)
38 0
|
5月前
|
存储 JavaScript 前端开发
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(二)
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(二)
41 0
|
5月前
|
JavaScript 前端开发
js/javascript 操作对象【全】(含常用的操作对象的lodash)
js/javascript 操作对象【全】(含常用的操作对象的lodash)
36 0
|
5月前
|
存储 JavaScript 前端开发
js/javascript 操作数组【全】(含常用的操作数组的lodash)
js/javascript 操作数组【全】(含常用的操作数组的lodash)
27 0
|
5月前
|
JavaScript
js 解析和操作树 —— 获取树的深度、提取并统计树的所有的节点和叶子节点、添加节点、修改节点、删除节点
js 解析和操作树 —— 获取树的深度、提取并统计树的所有的节点和叶子节点、添加节点、修改节点、删除节点
142 0