写的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 Math对象
Aug 13 Javascript
表格 隔行换色升级版
Nov 07 Javascript
js或css文件后面跟参数的原因说明
Jan 09 Javascript
jQuery数据显示插件整合实现代码
Oct 24 Javascript
js多级树形弹出一个小窗口层(非常好用)实例代码
Mar 19 Javascript
多个$(document).ready()的执行顺序实例分析
Jul 26 Javascript
javascript实现跨域的方法汇总
Jun 25 Javascript
BootstrapTable refresh 方法使用实例简单介绍
Feb 20 Javascript
详解利用Angular实现多团队模块化SPA开发框架
Nov 27 Javascript
深度了解vue.js中hooks的相关知识
Jun 14 Javascript
Vue 实现CLI 3.0 + momentjs + lodash打包时优化
Nov 13 Javascript
UEditor 自定义图片视频尺寸校验功能的实现代码
Oct 20 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
【星际争霸1】人族1v7家ZBath
2020/03/04 星际争霸
全国FM电台频率大全 - 19 广东省
2020/03/11 无线电
PHP在Web开发领域的优势
2006/10/09 PHP
给多个地址发邮件的类
2006/10/09 PHP
简单的php中文转拼音的实现代码
2014/02/11 PHP
php 如何获取文件的后缀名
2016/06/05 PHP
PHP调用全国天气预报数据接口查询天气示例
2019/02/20 PHP
JAVASCRIPT  THIS详解 面向对象
2009/03/25 Javascript
利用函数的惰性载入提高javascript代码执行效率
2014/05/05 Javascript
javascript实现加载xml文件的方法
2015/11/24 Javascript
js控制li的隐藏和显示实例代码
2016/10/15 Javascript
canvas绘制的直线动画
2017/01/23 Javascript
整理关于Bootstrap模态弹出框的慕课笔记
2017/03/29 Javascript
Angular.Js之Scope作用域的学习教程
2017/04/27 Javascript
jQuery模拟爆炸倒计时功能实例代码
2017/08/21 jQuery
基于node下的http小爬虫的示例代码
2018/01/11 Javascript
Vue 使用 Mint UI 实现左滑删除效果CellSwipe
2018/04/27 Javascript
Vue 实现输入框新增搜索历史记录功能
2019/10/15 Javascript
Vue使用v-viewer实现图片预览
2020/10/21 Javascript
Python求算数平方根和约数的方法汇总
2016/03/09 Python
CentOS中升级Python版本的方法详解
2017/07/10 Python
Python三级菜单的实例
2017/09/13 Python
Python 确定多项式拟合/回归的阶数实例
2018/12/29 Python
python pcm音频添加头转成Wav格式文件的方法
2019/01/09 Python
Python3.5运算符操作实例详解
2019/04/25 Python
python如何保证输入键入数字的方法
2019/08/23 Python
Django连接数据库并实现读写分离过程解析
2019/11/13 Python
Python如何安装第三方模块
2020/05/28 Python
Python之多进程与多线程的使用
2021/02/23 Python
详解Canvas事件绑定
2018/06/27 HTML / CSS
linux比较文件内容的命令是什么
2013/03/04 面试题
Python是如何进行类型转换的
2013/06/09 面试题
医务人员竞聘职务自我评价分享
2013/11/08 职场文书
职务说明书范文
2014/05/07 职场文书
安全标语大全
2014/06/10 职场文书
python基础入门之普通操作与函数(三)
2021/06/13 Python