zoukankan      html  css  js  c++  java
  • javascript模块化教程学习笔记01

    斑马线表格:

      鼠标移上去的一行会高亮显示,移开后消失。

      用js来写这个效果,封装起来了,下次使用就非常方便。

      但是我还有几个问题,不知道是为什么,边看边学,慢慢来吧。

    斑马线效果的js代码:

    table.addEventListener("mouseover", function(e){

    var current_row = e.target.parentNode;           //  current_row就是tr ,代表一行
      if (current_row.nodeName !== "TR"){
         return;
       }
    current_row.className = "active";
    current_row.addEventListener("mouseout", function(){
        this.className = "";
      });
    })

    active是一段背景颜色的外链css代码。

    ?? 对这一段特别迷茫

    if (current_row.nodeName !== "TR"){
         return;
       }

    注释是:“当mouseover事件不是由td触发、父元素标签不是TR时停止处理,即只在table内有效。”

    这里说的情况难道是指:可由th触发,它的父元素是 TR。也可由td触发,父元素为TR,这两种情况都是可以高亮的。

               表头的标题,<caption>它会直接return所以不能高亮。

      确实效果也是这样的,标题的一行没有高亮,th的一行可以高亮。

    可是当我去掉这一整段if语句:

        if (current_row.nodeName !== "TR"){

             return;
         }

    鼠标一旦移上表格,就变成了这样:

     

     所有css效果都消失了,这是为啥呀?

     这段if语句照我的理解只是让表头标题不高亮的,可是它实际上有这么大作用。

  • 相关阅读:
    C# 操作Excel之旁门左道
    C#数据类型、控件、数据类型、ADO.NET等命名规范
    tab 切换函数
    ASP.NET常用JS脚本整理
    实现MSMQ消息加密的安全实践
    关于jQuery中的offset()和position()
    SQL中使用update inner join和delete inner join
    setTimeout和setInterval
    设计漂亮的样式表是一门艺术(译) (转)
    使用jQuery制作手风琴效果(转)
  • 原文地址:https://www.cnblogs.com/mingnai/p/11999770.html
Copyright © 2011-2022 走看看