题目查找两个节点的最近的一个共同父节点,可以包括节点自身function commonParentNode(oNode1, oNode2) {while(oNode1){if(oNode1.contains(oNode2)){return oNode1}else{oNode1=oNode1.parentNode}}
}
原文:https://www.cnblogs.com/junjie99/p/14629619.html
今天给组件添加一个小功能,需要点击界面空白部分关闭当前组件,找了好一会儿,发现主要是jquery的方法,js原生几乎没有,崩溃。。好不容易弄出来了,就给自己做个笔记吧,ps:我用的react要用到的方法:1.contains:就是判断某个元素是不是选定元素的子元素(或本身);2.window.event.target:返回事件的目标节点,比如你点击了某个<h1></h1>,它就返回这个h1;(万恶的ie不支持)3.addEventListener:事件监听,示例,document....
概述匹配包含给定文本的元素参数textStringV1.1.4一个用以查找的字符串示例描述:查找所有包含 "John" 的 div 元素HTML 代码:<div>John Resig</div> <div>George Martin</div> <div>Malcom John Sinclair</div> <div>J. OhnjQuery 代码:$("div:contains(John)")结果:[ <div>John Resig</div>, <div>Malcom John Sinclair</div> ]实例代码:实例一:<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" conten...
jQuery:has()和jQuery:contains()两个方法比较类似。不同点在于:has是判断标签的contains是判断文本的1、jQuery:has()<div><p>Hello</p></div>
<div>Hello again!</div>
$("div:has(p)").addClass("test");
//含有p标签的div标签增加test样式注:has中的括号里可以含引号也可以省略。2、jQuery:contains()<div>John Resig</div>
<div>George Martin</div>
<div>Malcom John Sinclair</div>
<div>J. Ohn</div>
$("div:contains(Joh...
$(div).filter(.div1);//选择div标签中class属性为div1的div元素$(div).find(em);//选择div标签中的em标签的元素filter()是根据括号中的 属性来进行筛选 比如:$("div").filter("p") 这样是不允许的。filter括号里只一些属性,或者包含什么的,不能是一个元素,例如"p"而find()是获取某些元素。<pre class="javascript" name="code"><html>
<head><script src="jquery-2.1.3.js"></script>
</head>
<body><div class="css"> <p cl...
从那起,我已经对这些方法做了大量的研究,并且已经在很多场合使用他们。在很多任务中,他们被证明是非常有用的(特别关于结构的抽象 DOM 选择器)。 1、DOMElement.contains(DOMNode) 这个方法起先用在 IE ,用来确定 DOM Node 是否包含在另一个 DOM Element 中。 当尝试优化 CSS 选择器遍历(像:“#id1 #id2”),这个方法很有用。你可以通过 getElementById 得到元素,然后使用 .contains() 确定 #id1 实际上是否包含 #id2。 注...
contains选择符 contains选择符是指对象中包括指定内容的对象本身,如:$('td:contains("abcd")').addClass('highlight');则是找到所有包含“abcd”这样内容的单元格,设置这些单元格的样式类型添加“highlight”类。 下面的代码,运行后,需要刷新下,以便加载jquery$(document).ready(function(){
$("div:contains('John')").css("text-decoration", "underline");
}); John Resig
George Martin
Malcom John Sinclair
J. Oh...
本文实例讲述了jQuery使用contains过滤器实现精确匹配的方法。分享给大家供大家参考,具体如下:
:contains 选择器选取包含指定字符串的元素。
该字符串可以是直接包含在元素中的文本,或者被包含于子元素中。
经常与其他元素/选择器一起使用,来选择指定的组中包含指定文本的元素,如:
$("p:contains(is)") 表示选择所有包含 "is" 的 元素。
再如:
$("p:contains(张三)") 或 $("p:contains("张三")") 表示选择所有包含 "张三"...
为了兼容IE和FF我们不得不用以下方法: dom contains 方法 by 司徒正美 if(!!window.find){
HTMLElement.prototype.contains = function(B){
return this.compareDocumentPosition(B) - 19 > 0
}
}
window.onload = function(){
var A = document.getElementById('parent'),
B = document.getElementById('child');
alert(A.contains(B));
alert(B.contains(A));
} contains方法 contains方法 [Ctrl+A 全选 注:如需引入...
从那起,我已经对这些方法做了大量的研究,并且已经在很多场合使用他们。在很多任务中,他们被证明是非常有用的(特别关于结构的抽象 DOM 选择器)。 1、DOMElement.contains(DOMNode) 这个方法起先用在 IE ,用来确定 DOM Node 是否包含在另一个 DOM Element 中。 当尝试优化 CSS 选择器遍历(像:“#id1 #id2”),这个方法很有用。你可以通过 getElementById 得到元素,然后使用 .contains() 确定 #id1 实际上是否包含 #id2。 注...
代码如下: $(function () { //根据select中的option的文本来执行选中 //$("#selectbox option[text='第二项']"); //$("#selectbox option").filter("[text='第二项']"); //上面两种写法都是错误的 //正确写法 $("#btn4").click(function () { var $option =$("#selectbox option:contains('第二项')").map(function(){ if ($(this).text() == "第二项") { return this; } }); alert($option.length > 0 ? "有对象" : "无对...
代码如下: /** * 扩展startWith方法 * @param str * @return */ String.prototype.startWith=function(str){ if(str==null||str==""||this.length==0||str.length>this.length) return false; if(this.substr(0,str.length)==str) return true; else return false; return true; }; /** * 扩展contains方法 * @param item * @return */ Array.prototype.contains = function(item){ return RegExp("\\b"+item+"\\b").test(this); }...
本文实例讲述了jQuery中contains选择器用法。分享给大家供大家参考。具体分析如下:
此选择器匹配包含给定文本的元素。
语法:代码如下:$(":contains(text)")
此选择器一般也要和其他选择器配合使用,比如类选择器和元素选择器等等。例如:代码如下:$("li:contains(html)").css("color","blue")
以上代码将文本中包含"html"的li元素中的字体颜色设置为蓝色。
如果不和其他选择器配合使用,则默认状态是和*选择器配合使用,例如$(":co...
本文实例讲述了jQuery实现contains方法不区分大小写的方法。分享给大家供大家参考。具体实现方法如下:// NEW selector
jQuery.expr[':'].Contains = function(a, i, m){return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0;
}; // OVERWRITES old selecor
jQuery.expr[':'].contains = function(a, i, m){return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0;
};用法:$("div:conta...
javascript的Array没有contains方法,有时候这会不方便,contains方法实现很简单:代码如下:
function contains(a, obj) {var i = a.length;while (i--) {if (a[i] === obj) {return true;}}return false;
}当然我们也可以扩展Array类,如下js代码如下:
Array.prototype.contains = function(obj) {var i = this.length;while (i--) {if (this[i] === obj) {return true;}}return false;
}这样就可以方便的使用contains方法了:代码...