前端挑战之js编程题(1)

news/2024/7/6 1:44:21

题目要求:


查找两个节点的最近的一个共同的父节点,可以包括节点自身。


思路:


看到题目要求,首先应该想到有三种情况,有两个节点,dom1和dom2:

1、dom1为dom2的最近父节点,判断dom1是否包含dom2节点,包含则返回dom1,不包含继续向下运行。

2、dom2为dom1的最近父节点,判断dom2是否包含dom1节点,包含则返回dom2,不包含继续向下运行。

3、dom1和dom2在同一层,判断dom1和dom2是否在同一层,若是则返回其中一个节点的父节点。


方案:


function commonParentNode(oNode1, oNode2) {
    if(oNode1.contains(oNode2))
        return oNode1;
    else if(oNode2.contains(oNode1))
        return oNode2;
    else
        return oNode1.parentNode;
}


http://www.niftyadmin.cn/n/4541426.html

相关文章

PDF文件怎么拆分,PDF拆分技巧

PDF文件怎么拆分呢?现在的PDF文件都会有很多页面,我们想要将这个页面拆分成单个的PDF文件改怎么操作呢?不要着急,下面小编就使用迅捷PDF编辑器为大家分享一下PDF拆分的技巧。  使用软件:迅捷PDF编辑器  软件的操作…

前端挑战之js编程题(2)

题目要求&#xff1a; 实现对一个现有的数组去除重复元素&#xff0c;并返回去除重复元素的数组。 方案&#xff1a; var arr1[1,2,3,1,4,5,3,6] arr2[] for(var i0,lenarr1.length;i<len;i){ if(arr2.indexOf(arr[i])<0){ arr2.push(arr[i]); } } console.log(arr2); 题…

带你简单了解通信工程

通信工程&#xff0c;是电子工程的一个重要分支&#xff0c;也是电子信息类子专业&#xff0c;更是一门重要的基础学科。很多学校也有别的叫法&#xff0c;例如电子通信工程、电信工程等。电子工程&#xff0c;也就是俗称的EE&#xff0c;Electronic Engineering。理论上来说&a…

《彼岸花》

涅槃的彼岸红花生彼岸&#xff0c; 相思不得见。 悲喜随风走&#xff0c; 浮沉如梦幻。

《静夜思》

《静夜思》 一夜一梦一思忧&#xff0c; 一草一叶一春秋。 一山一水一寺隐&#xff0c; 一斋一禅一人修。

Unity3D游戏引擎为何能让游戏发烧友如此痴狂

前景好——高薪行业里的天生贵族学习Unity3d很多人都是冲着游戏开发工程师的目标而来。目前游戏逐渐占领大众娱乐市场&#xff0c;整个行业结构正在发生翻天覆地的变化。游戏产业作为一个新兴产业&#xff0c;从初期形成到现如今的快速发展并迅速走向成熟时期&#xff0c;游戏行…

css之分页打印

很久没写文章了&#xff0c;最近做了一个员工入职的项目&#xff0c;该系统有一个批量打印个人信息的功能需求。因为之前也没接触过打印这方面的功能&#xff0c;就上网查了下&#xff0c;发现jquery有个打印功能的API&#xff08;PrintArea&#xff09;,关于这个api大家有兴趣…

这7款APP到底有什么好,值得知乎2万人点赞,原来如此!

现在每个品牌手机的应用市场里都有各种各样的不同的APP,有时候为了新鲜感或是一时兴起&#xff0c;下载了很多日常不常用甚至不用的APP,不仅占手机内存&#xff0c;还耗费流量&#xff01;但是&#xff0c;这并不能认为所有的APP都不实用&#xff0c;比如这几款APP到底有什么好…