javascript+css仿excel表格效果

 


  这是excel的界面,选中一个单元格后,该单元格,以及同行、同列的第一个单元格都呈现出特殊样式,很好地提示了用户。接下来用javascript和css实现类似效果。

  关键的css如下:

 

css代码
td {
border-top:3px solid #FFFFFF;
border-bottom:2px solid #B3DE94;
padding:9px;
}
td.hover {/*选中的单元格*/
background-color:#595;
}
td.hover2 {/*同行同列的第一个单元格*/
background-color:#FFCC99;
}

 

 

  主要是背景颜色的不同。

 

  然后用javascript循环遍历每一个单元格(不包括第一行和第一列的单元格),给它们添加鼠标经过和移出事件(当然和可以添加点击事件),然后给相关的单元格对象设定class值,鼠标移出时class设为“”就行了

 

  javascript 写道

<script type="text/javascript">
var cells, len, tdRow, tdCol;
//保存单元格、单元格数组长度、同行,同列第一个单元格
window.onload = function() {
 cells = document.getElementsByTagName("td");
 len = cells.length;
 for (var i = 6; i<len; i++) {
  if (i%5 != 0) {
   cells[i].onmouseover = function() {
    this.className = "hover";
    for (var j = 6; j<len; j++) {
     if (cells[j] == this) {
      (tdRow=cells[j%5]).className = "hover2";
      (tdCol=cells[j-j%5]).className = "hover2";
      document.getElementById("position").innerHTML = "x:"+(j%5)+" y:"+Math.floor(j/5);
      //Firefox浏览器貌似只支持innerHTML
      break;
     }
    }
   };
   cells[i].onmouseout = function() {
    this.className = "";
    tdRow.className = tdCol.className="";
    document.getElementById("position").innerHTML = "";
    //tdRow tdCol的存在就为了避免又一次的循环遍历
    /*for(var j=0;j<len;j++){
    if(cells[j]==this){
    cells[j%5].className="";
    cells[j-j%5].className="";
    break;
    }
    }*/
   };
  }
 }
};

</script>

 

   使用getElementsByTagName或getElementById取得属性,注意两个方法名称的区别:Elements的“s”

  使用className属性动态设置元素的class

 

  最后的效果如下:

 


 

  经过测试Firefox和搜狗浏览器(IE)都拥有同样的效果

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Excel表格在线系统是一种基于互联网的应用程序,主要用于在浏览器上打开、编辑和保存Excel表格文件。它提供了一个方便的平台,让用户可以随随地使用各种设备(包括电脑、手机、平板等)进行Excel表格的创建和编辑。下面是一些可能的实现源码方案。 首先,前端开发方面可以使用HTML、CSSJavaScript来构建用户界面。HTML负责页面的结构,CSS负责样式的设计,JavaScript负责与后端通信和处理用户操作。 其次,后端开发方面可以选择使用一种后端编程语言来处理前端传递的数据,比如Java、Python、PHP等。通过后端编程语言,可以实现用户登录、保存Excel文件、读取Excel文件等功能。 此外,还可以使用一些开源的JavaScript插件或框架来辅助开发。比如,可以使用jQuery插件来简化DOM操作,使用Bootstrap框架来实现页面的响应式布局。 在具体的实现过程中,需要注意安全性和性能优化。对于安全性,可以采用一些常见的措施,比如用户身份验证(登录),输入数据的验证和过滤,以及对用户权限的控制等。对于性能优化,可以使用一些技术手段,如前端资源的压缩和合并,后端数据的缓存,以及使用异步请求等。 总之,实现Excel表格在线系统源码需要前端开发、后端开发和相关框架、插件的运用,以及对安全性和性能优化的考虑。通过合理的架构设计和代码编写,可以实现一个功能完善、安全可靠、性能较高的Excel表格在线系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值