• DOM基础代码练习(一)


    上一篇介绍了一下DOM的一些基础的知识,这里我整理了一些有关上一篇知识点的一些封装函数。

    1.遍历元素节点

     1 function retChild(node) {
     2         var child = node.childNodes,
     3               len = child.length;
     4         for(var i = 0; i < len; i++){
     5               if(child[i].nodeType === 1) {
     6                     console.log(child[i]);
     7                     child[i].hasChildNodes() && retChild(child[i]);
     8               }
     9         }
    10   }   

    JavaScript; “复制代码”); “查看纯文本代码”); “返回代码高亮”)

    2.封装函数,返回元素e的第n层父节点

     1   function retParent(e, n) {
     2         var n = n || 0; // 进行简单的容错检测
     3         if(n === 0) {
     4               return e;
     5         }
     6         for(var i = 0; e && (i<n); i++) {
     7               e = e.parentNode;
     8         }
     9         return e;
    10   }     
    JavaScript; “复制代码”); “查看纯文本代码”); “返回代码高亮”)

    3.封装函数,返回元素e的第n个兄弟元素节点,如果n为正,返回后面的兄弟元素节点,n为负,返回前面的,n为0,返回自己

      function retSibling(e, n){
            var n = n || 0;
            if(n === 0) {
                  return e;
            }
            while(e && n != 0) {
                  if(n > 0) {
                        if(e.nextElementSibling){ // 如果不是ie浏览器
                              e = e.nextElementSibling;
                        }else { // 如果是ie浏览器
                              e = e.nextSibling;
                              while(e && e.nodeType != 1) {
                                    e=e.nextSibling;
                        }
                 }
                 n–;
            }else {
                  if(e.previousElementSibling) {
                       e = e.previousElementSibling;
                  }else {
                        e = e.previousSibling;
                        while(e && e.nodeType != 1) {
                        e=e.previousSibling;
                        }
                 }
                 n++;
                 }
            }
            return e;
      }   

    JavaScript; “复制代码”); “查看纯文本代码”); “返回代码高亮”)

  • 相关阅读:
    python并发编程的几种方法
    pycharm pytest 运行时报错 gbk
    mac m1 安装python3
    python json.dumps 打印出后为乱码 解决方法
    git ssh密匙配置
    登录接口需html中的token时,需用requests-html库
    代码服务器运行时找不到包文件位置
    mac终端使用iterm及主题 高亮
    Mac 生成项目目录树形结构
    mac 安装xcode命令行工具
  • 原文地址:https://www.cnblogs.com/pandawind/p/10000913.html
Copyright © 2020-2023  润新知