$('xx').next('span')
2. javascript获取节点值
你的代码问题:
一、你的层数不够,还应该下一层
二、firstChild是<br>,应该再次nextSibling
下面的代码调专试通属过,正确获取结果:
<div id="div1">
<div>
<div><br />
<span>990</span>
</div>
</div>
</div>
<script language="javascript">
alert(document.getElementById("div1").firstChild.firstChild.firstChild.nextSibling.innerHTML);
</script>
3. js如何获取文本节点的值
两种方来法:
比如有个文自本节点:<div id="test"><strong>this is value</strong></div>
1、通过document对象获取:
var obj=document.getElementById("test");
//非Mozilla浏览器:
obj.innerText;
2、其他的浏览器
obj.firstChild.nodeValue;
4. javascript怎么获取获取一个节点的所有子节点
$(function(){
$(".navbar-inverseli").each(function(index){
if($(this).children().text().indexOf("主页")>=0){
$(this).addClass("active");
}
});
});
这个是获取ul下的li,然后设置样式。
5. 原生JS与jQuery获取节点的方法
首先我们来介绍一下DOM中元素与节点间的关系:页面中所有内容都是节点[包括元素,属性,文本],所以节点是包括元素的。
以下是节点的三个属性:
若是火狐和chrome浏览器上述方法不存在兼容问题,而若是在IE8浏览器中后四组内容只能获取元素,无法获取文本或属性。即原获取节点方法-->取元素;原获取元素方法-->undefined。
jQuery中是以方法的形式进行调用,同时都是用来获取元素:
6. js 中怎样通过class来取一个节点
纯js没有,不过可以自己封装。。
function getElementsByClassName(ele,className) {
//获取所有子节点
if(document.all){
var children = ele.all;
}else{
var children =
ele.getElementsByTagName('*');
}
//遍历子节点并检查className属性
var elements
= new Array();
for (var i = 0; i < children.length; i++) {
var child
= children[i];
var classNames = child.className.split(' ');
for (var j =
0; j < classNames.length; j++) {
if (classNames[j] == className) {
elements[elements.length] = child;
break;
}
}
}
return
elements;
}
var trees = getElementsByClassName(document,'TreeView');
7. JS获取XML节点值
<textarea name="other" id="other" cols="50" rows="5" >无</textarea>
<script>
alert(other.innerHTML);
alert(other.innerText);
alert(other.value);
</script>
这3个都可以,推荐内用容value
8. js怎么选择节点
document.getElementsByTagName()
根据标签名获取,如<p> <div>
如document.getElementsByTagName("h1")
document.getElementsByName()
根据标签内的name属性值获取
如<input name='x' />,document.getElementsByName('x')
document.getElementById()
根据id来获取
如document.getElementById("wrap")
document.querySelector()
html5新出的选择方式,选择的是数组中的第一个元素,有些类似jquery的选择方式
如document.querySelector(".div1")
如果满意,望采纳!提问者的点赞和采纳就是我们的动力和追求,谢谢!
9. js如何获取子节点
1.可以使用childNotes方法:
2.定义和用法:
childNodes 属性返回节点的子节点集合,以版 NodeList 对象。
3.实例权:获得 body 元素的子节点集合:
document.body.childNodes;
10. js之原生节点操作
链接地址: http://blog.csdn.net/hj7jay/article/details/53389522
http://blog.csdn.net/terrychinaz/article/details/8492092
1、节点查找API节点:
Node是一个接口,中文叫节点,很多类型的DOM元素都是继承于它,都共享着相同的基本属性和方法。常见的Node有 element,text,attribute,comment(注释节点),document 等。
{
ELEMENT_NODE: 1, // 元素节点
ATTRIBUTE_NODE: 2, // 属性节点
TEXT_NODE: 3, // 文本节点
COMMENT_NODE: 8, // 注释节点
DOCUMENT_NODE: 9, // 文档
DOCUMENT_TYPE_NODE: 10,
DOCUMENT_FRAGMENT_NODE: 11, // 文档碎片
}
通常情况下,只需要了解上面的几个就行了。
2、节点查找API
document.getElementById :根据ID查找元素,大小写敏感,如果有多个结果,只返回第一个;
document.getElementsByClassName :根据类名查找元素,多个类名用空格分隔,返回一个 HTMLCollection 。注意兼容性为IE9+(含)。另外,不仅仅是document,其它元素也支持 getElementsByClassName 方法;
document.getElementsByTagName :根据标签查找元素, * 表示查询所有标签,返回一个 HTMLCollection 。
document.getElementsByName :根据元素的name属性查找,返回一个 NodeList
document.querySelector :返回单个Node,IE8+(含),如果匹配到多个结果,只返回第一个。
document.querySelectorAll :返回一个 NodeList ,IE8+(含)。
document.forms :获取当前页面所有form,返回一个 HTMLCollection ;
这里顺便提一下:querySelector与getElement 之类的区别:
写法不同,最大的区别就是getElement 之类的只能接受的参数是id,class,name之类的,而querySelector接受的参数则扩展到了css的选择器【必须严格按照css选择器写法来写,不然抛出异常】,可以用任意的选择器来描述选择的东东。getElement***返回值是一个 Live Node List(动态),querySelector返回的是 Static Node List(静态)。
什么是NodeList呢?
<pre>NodeList 本质上是一个动态的 Node 集合,只是规范中对 querySelectorAll 有明确要求,规定其必须返回一个静态的 NodeList 对象。</pre>
看下面:
html:
<p class="lost">1</p>
<p class="lost">2</p>
js:
var query2 = document.querySelectorAll('.lost');
var query3 = document.getElementsByClassName("lost");
console.log(query2);//打印出的原型是NodeList
console.log(query3);//HTMLCollection
返回的是NodeList /HTMLCollection?
实际上,HTMLCollection 和 NodeList 十分相似,都是一个动态的元素集合,每次访问都需要重新对文档进行查询。两者的本质上差别在于,HTMLCollection 是属于 Document Object Model HTML 规范,而 NodeList 属于 Document Object Model Core 规范。
这里又有个问题:NodeList 和HTMLCollection 的区别是什么呢?
HTMLCollection是元素集合,而NodeList是节点集合(既可以包含元素,也可以包含文本节点)。所以 node.childNodes 返回 NodeList,而 node.children 和 node.getElementsByXXX 返回 HTMLCollection 。children是Element的属性,只返回的是html节点。childNodes是Node的属性,返回的是制定元素的所有的子元素集合的节点,包括html节点,文本节点,属性节点,注释节点等等。
例子:
html:
<ul>
<li>1</li>
<li>1</li>
<li>1</li>
<li>1</li>
</ul>
js:
var ul = document.getElementsByTagName('ul')[0];
var lis1 = ul.childNodes,//NodeList
lis2 = ul.children;//htmlcollection
console.log(lis1.toString(), lis1.length); // "[object NodeList]" 9
console.log(lis2.toString(), lis2.length);//[object HTMLCollection] 4
上面的nodelist节点把换行也当作了一个个的空白文本节点了,所以返回的是9,而htmlcollection却不会。querySelectorAll 的返回值是一个静态的 NodeList 对象,而 getElementsBy ***系列的返回值实际上是一个 HTMLCollection 对象 。
<pre>
如果作为NodeList返回,以下情况将会被当作文本节点处理: