写的htc的数据表格


Posted in Javascript onJanuary 20, 2007

作者:xmg (小马哥) 

<HTML> 
<HEAD> 
<TITLE></TITLE> 
</HEAD> 
<style> 
body{font-size:12} 
table,input,button,select,textarea,b{font-size:12;font-family:宋体} 
body{background:#ECE9D8} 
td{border:1px solid #c0c0c0;display:inline} 
.GridBorder{background:#ece9d8;border:1px solid #000;border-top:1px solid #FFF;border-left:1px solid #FFF;text-align:center;WORD-BREAK:break-all} 
</style> 
<script> 
if(document.all){ 
    Event.prototype.__defineGetter__("srcElement",function(){var node=this.target;while(node.nodeType!=1){node=node.parentNode}return node}) 
    Event.prototype.__defineGetter__("x",function(){return this.clientX+2}) 
    Event.prototype.__defineGetter__("y",function(){return this.clientY+2}) 
} 
function $(obj){return document.getElementById(obj)} 
</script> 
<BODY> 
<table id=datagrid> 
  <tr> 
    <td width=15></td> 
    <td width=50>字段一</td> 
    <td width=50>字段二</td> 
    <td width=50>字段三</td> 
    <td width=50>字段四</td> 
    <td width=50>字段五</td> 
    <td width=50>字段六</td> 
    <td width=50>字段七</td> 
    <td width=50>字段八</td> 
    <td width=50>字段九</td> 
  </tr> 
  <tr> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
  </tr> 
  <tr> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
  </tr> 
  <tr> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
  </tr> 
  <tr> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
  </tr> 
  <tr> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
    <td></td> 
  </tr> 
</table> 
</BODY> 
</HTML> 
<script> 
var obj=$("datagrid"),td 
var body=document.body 
var DragObj=null 
var objxy=getxy(obj) 
var Dragborder=0 
obj.style.cssText="background:#FFF;border-collapse:collapse" 
for(var i=0;i<obj.rows.length;i++){ 
    for(var j=0;j<obj.rows[i].cells.length;j++){ 
        td=obj.rows[i].cells[j] 
        if(i==0){ 
            td.className="GridBorder" 
            td.style.cssText="font-weight:bold" 
        }else if(j==0){ 
            td.className="GridBorder" 
            td.style.cssText="width:15px" 
        }else{ 
            td.innerHTML="<input type=text value='"+td.innerHTML.replace(/ /gi,'')+"' style='width:100%;border:0px'>" 
        } 
    } 
} 
var focus_img=document.createElement("IMG") 
focus_img.src="http://bbs.51js.com/attachment.php?aid=7290&noupdate=yes" 
if(typeof(Dline)!="object"){ 
    var Dragline=document.createElement("DIV") 
    Dragline.id="Dline" 
    Dragline.style.cssText="width:1px;border-left:1px solid #CCC;display:none;position:absolute" 
    body.appendChild(Dragline) 
} 
obj.onclick=function(){ 
    var e=event,tr 
    var ee=e.srcElement 
    if(ee.tagName=="INPUT"){ 
        tr=ee.parentNode.parentNode 
        obj.rows[tr.rowIndex].cells[0].appendChild(focus_img) 
    } 
} 
obj.onmousemove=function(){ 
    var e=event,tr 
    var ee=e.srcElement 
    if(ee.tagName=="TD"&&ee.parentNode.rowIndex==0&&ee.cellIndex>0){ 
        var a=getxy(ee) 
        if(event.x<(a[1]+5)||event.x>(a[1]+a[2]-5)){ 
            body.style.cursor="col-resize" 
            objxy=getxy(obj) 
        }else{ 
            body.style.cursor="default" 
        } 
    } 
} 
obj.onmousedown=function(){ 
    var e=event 
    var ee=e.srcElement 
    var a=getxy(ee) 
    if(body.style.cursor=="col-resize"){ 
        if(event.x<(a[1]+5)) 
            Dragborder=1 
        else if(event.x>(a[1]+a[2]-5)) 
            Dragborder=2 
        else 
            Dragborder=0 
        DragObj=ee 
        $("Dline").style.left=e.x 
        $("Dline").style.top=objxy[0] 
        $("Dline").style.height=objxy[3] 
        $("Dline").style.display="" 
    } 
} 
body.onmousemove=function(){ 
    if(DragObj!=null){ 
        $("Dline").style.left=event.x 
        body.style.cursor="col-resize" 
    } 
} 
body.onmouseup=function(){ 
    if(DragObj!=null){ 
        $("Dline").style.display="none" 
        body.style.cursor="default" 
        if(Dragborder==2){ 
            var a=getxy(DragObj) 
            var w=event.x-a[1] 
            w=w<=0?0:w 
            DragObj.style.width=w 
        } 
        if(Dragborder==1){ 
            var pnode=DragObj.previousSibling 
            var a=getxy(pnode) 
            var w=event.x-a[1] 
            w=w<=0?0:w 
            pnode.style.width=w 
        } 
        DragObj=null 
    } 
} 
function getxy(e){ 
    var a=new Array() 
    var t=e.offsetTop; 
    var l=e.offsetLeft; 
    var w=e.offsetWidth; 
    var h=e.offsetHeight; 
    while(e=e.offsetParent){ 
        t+=e.offsetTop; 
        l+=e.offsetLeft; 
    } 
    a[0]=t;a[1]=l;a[2]=w;a[3]=h 
  return a; 
} 
</script>
Javascript 相关文章推荐
javascript scrollTop正解使用方法
Nov 14 Javascript
AngularJS基础知识
Dec 21 Javascript
浅谈Sizzle的“编译原理”
Apr 14 Javascript
Javascript连接Access数据库完整实例
Aug 03 Javascript
jQuery使用经验小技巧(推荐)
May 31 Javascript
Bootstrap 折叠(Collapse)插件用法实例详解
Jun 01 Javascript
基于HTML+CSS+JS实现增加删除修改tab导航特效代码
Aug 05 Javascript
简单谈谈JS数组中的indexOf方法
Oct 13 Javascript
深入理解JavaScript中的块级作用域、私有变量与模块模式
Oct 31 Javascript
jQuery阻止移动端遮罩层后页面滚动
Mar 15 Javascript
详解使用mpvue开发github小程序总结
Jul 25 Javascript
小程序角标的添加及绑定购物车数量进行实时更新的实现代码
Dec 07 Javascript
共享自己写一个框架DreamScript
Jan 20 #Javascript
javascript读取RSS数据
Jan 20 #Javascript
一个多次搜索+多次传值的解决方案
Jan 20 #Javascript
短信提示使用 特效
Jan 19 #Javascript
通过JAVAScript实现页面自适应
Jan 19 #Javascript
Javascript----文件操作
Jan 18 #Javascript
强悍无比的WEB开发好助手FireBug(Firefox Plugin)
Jan 16 #Javascript
You might like
地球防卫队:陪着奥特曼打小怪兽的人类力量 那些经典队服
2020/03/08 日漫
magento后台无法登录解决办法的两种方法
2016/12/09 PHP
动态加载js的几种方法
2006/10/23 Javascript
JavaScript中数组的排序、乱序和搜索实现代码
2011/11/30 Javascript
JavaScript利用正则表达式去除日期中的“-”
2014/07/01 Javascript
jQuery图片特效插件Revealing实现拉伸放大
2015/04/22 Javascript
Hammer.js+轮播原理实现简洁的滑屏功能
2016/02/02 Javascript
JavaScript优化以及前段开发小技巧
2017/02/02 Javascript
JavaScript模板引擎应用场景及实现原理详解
2018/12/14 Javascript
Node.js Windows Binary二进制文件安装方法
2019/05/16 Javascript
Nodejs中使用puppeteer控制浏览器中视频播放功能
2019/08/26 NodeJs
Layui 解决表格异步调用后台分页的问题
2019/10/26 Javascript
解决Layui数据表格显示无数据提示的问题
2019/11/14 Javascript
vue 移动端记录页面浏览位置的方法
2020/03/11 Javascript
解决vue2中使用elementUi打包报错的问题
2020/09/22 Javascript
使用Vant完成通知栏Notify的提示操作
2020/11/11 Javascript
微信小程序自定义胶囊样式
2020/12/27 Javascript
[01:08:17]2018DOTA2亚洲邀请赛3月29日 小组赛B组 EG VS VGJ.T
2018/03/30 DOTA
[48:38]DOTA2亚洲邀请赛 3.31 小组赛 B组 Mineski vs Secret
2018/03/31 DOTA
Python中的yield浅析
2014/06/16 Python
python实现K最近邻算法
2018/01/29 Python
如何安装多版本python python2和python3共存以及pip共存
2018/09/18 Python
python实现自动解数独小程序
2019/01/21 Python
python使用pygame模块实现坦克大战游戏
2020/03/25 Python
python opencv图片编码为h264文件的实例
2019/12/12 Python
Python面向对象之多态原理与用法案例分析
2019/12/30 Python
pandas读取csv文件提示不存在的解决方法及原因分析
2020/04/21 Python
HTML5对手机页面长按会粘贴复制禁用的解决方法
2016/07/19 HTML / CSS
编写函数,将一个3*3矩阵转置
2013/10/09 面试题
花卉与景观设计系大学生求职信
2013/10/01 职场文书
行政求职信
2014/07/04 职场文书
电影开国大典观后感
2015/06/04 职场文书
2016医师资格考试考生诚信考试承诺书
2016/03/25 职场文书
深度学习tensorflow基础mnist
2021/04/14 Python
Pytest allure 命令行参数的使用
2021/04/18 Python
分析MySQL优化 index merge 后引起的死锁
2022/04/19 MySQL