写的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 相关文章推荐
js中使用DOM复制(克隆)指定节点名数据到新的XML文件中的代码
Jul 27 Javascript
javascript实现的HashMap类代码
Jun 27 Javascript
jQuery中addClass()方法用法实例
Jan 05 Javascript
jQuery中find()方法用法实例
Jan 07 Javascript
javascript图片预加载完整实例
Dec 10 Javascript
基于JavaScript实现树形下拉框
Aug 10 Javascript
详解JS-- 浮点数运算处理
Nov 28 Javascript
canvas实现图片根据滑块放大缩小效果
Feb 24 Javascript
JavaScript贪吃蛇小组件实例代码
Aug 20 Javascript
Nuxt配合Node在实际生产中的应用详解
Aug 07 Javascript
详解使用React制作一个模态框
Mar 14 Javascript
javascript实现获取中文汉字拼音首字母
May 19 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
PHP动态分页函数,PHP开发分页必备啦
2011/11/07 PHP
有关于PHP中常见数据类型的汇总分享
2014/01/06 PHP
PHP 使用二进制保存用户状态的实例
2018/01/29 PHP
php删除一个路径下的所有文件夹和文件的方法
2018/02/07 PHP
Ajax+PHP实现的删除数据功能示例
2019/02/12 PHP
jquery.simple.tree插件 更简单,兼容性更好的无限树插件
2010/09/03 Javascript
JavaScript中变量提升 Hoisting
2012/07/03 Javascript
JSON+JavaScript处理JSON的简单例子
2013/03/20 Javascript
使用jQuery内容过滤选择器选择元素实例讲解
2013/04/18 Javascript
javascript自然分类法算法实现代码
2013/10/11 Javascript
JS网页图片按比例自适应缩放实现方法
2014/01/15 Javascript
javascript的事件触发器介绍的实现
2014/06/05 Javascript
浅谈javascript属性onresize
2015/04/20 Javascript
基于jQuery+Cookie实现的防止刷新的在线考试倒计时
2015/06/19 Javascript
推荐10 个很棒的 jQuery 特效代码
2015/10/04 Javascript
基于javascript实现全国省市二级联动下拉选择菜单
2016/01/28 Javascript
如何处理JSON中的特殊字符
2016/11/30 Javascript
深入理解Vue transition源码分析
2017/07/30 Javascript
Vue 组件传值几种常用方法【总结】
2018/05/28 Javascript
菊花转动的jquery加载动画效果
2018/08/19 jQuery
JS中min函数实例讲解
2019/02/18 Javascript
ES6中的class是如何实现的(附Babel编译的ES5代码详解)
2019/05/17 Javascript
JavaScript实现PC端四格密码输入框功能
2020/02/19 Javascript
extjs图表绘制之条形图实现方法分析
2020/03/06 Javascript
分享几道你可能遇到的python面试题
2017/07/24 Python
利用python打印出菱形、三角形以及矩形的方法实例
2017/08/08 Python
如何利用Python分析出微信朋友男女统计图
2019/01/25 Python
解决pycharm 工具栏Tool中找不到Run manager.py Task的问题
2019/07/01 Python
Python编写一个验证码图片数据标注GUI程序附源码
2019/12/09 Python
python 逆向爬虫正确调用 JAR 加密逻辑
2021/01/12 Python
linux面试题参考答案(4)
2014/09/21 面试题
自我鉴定怎么写
2014/01/12 职场文书
小学德育工作经验交流材料
2014/05/22 职场文书
运输公司工作总结
2015/08/11 职场文书
详解Js模块化的作用原理和方案
2021/04/29 Javascript
CSS 鼠标点击拖拽效果的实现代码
2022/12/24 HTML / CSS