DOM笔记2

DOM笔记2

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

<!–
节点类型检查
if(someNode.nodeType==ElementNode){
alert(“Node is an element”);
}
或者
if(someNode.nodeType==1){
alert(“Node is an element”);
}
使用nodeName和nodeValue这两个属性
if(someNode.nodeType==1){
var someNode.nodeName();//nodeName的值是元素的标签名
}
每一个节点都有一个childNodes属性。当中保存NodeList对象,NodeList是一种类型数组对象,用于保存一组有序的节点
这个对象也有length属性,能够通过位置来訪问这些节点
var firstChild=someNode.childNodes[0];
var secondChild=someNode.childNodes.item(1);
var length=someNode.childNodes.length;
每一个节点都有一个parentNode属性。该属性指向文档树中的父节点
if(someNode.nextSibling===null){
alert(“last node in the parent’s childNodes list…”);
}else if(someNode.previousSibling===null){
alert(“First node in the parent’s childNodes list…”);
假设列表中仅仅有一个节点,那么该节点的nextSibling和previousSibling都为null
}
父节点和第一个子节点和最后一个子节点也存在关系
firstChild
lastChild
即存在这种关系
(someNode.childNodes[0]===someNode.firstChild)
(someNode..childNodes[childNodes.length-1]===someNode.lastChild)

操作节点
最经常使用的方法是appendChilde();//用于向childNodesd的末尾加入一个节点
var returnNode=somenNode.appendChild(newNode);
alert(returnNode==newNode);//true
alert(someNode.lastChild==newNode);//true
使用insertBefore()方法将节点附加到ChildNodes的任何位置
var returnNode=someNode.appendChild(newNode,null);
alert(returnNode==someNode.lastNode);//true
//插入后成为一个子节点
var returnNode=someNode.appendChild(newNode,someNode.firstNode);
alert(returnNode===newNode);
alert(returnNode===someNode.firstNode);
//插入后成为最后一个节点的前一个节点
var returnNode=someNode.appendChild(newNode,someNode.lastNode);
alert(returnNode===someNode.childNodes.length-2);//true
alert(returnNode===newNode);//true
//注意:appendChild()和insertBefore不会删除节点
//replaceChild()方法接受两个參数,要插入的节点和要替换的节点,要替换的节点将由这种方法返回并从文档树中删除
//替换第一个子节点
var retuenNode=someNode.replaceChild(newNode,someNode.firstChild);
//替换最后一个子节点
var returnNode=somNode.replaceChild(newNode,someNode.lastChild);
//使用removeChild()方法删除一个子节点
var formerFirstNode=someNode.removeChild(someNode.firstNode);
//删除最后一个子节点
var lastNode=someNode.removeChild(someNode.lastNode);
//parentNode属性
。。。

//其它方法
cloneNode():用于创建调用这种方法的节点的全然一样的一个副本
CloneNode()接受一个布尔值用于运行是否深度复制,在參数为true时。运行深度复制
也就是复制节点和整个子树节点,在參数为FALSE时。仅仅复制本身
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
var deepList=Mylist.clondNode(true);
alert(deeplist.childNodes.length);
//查找元素
对于document对象来说,提供了两个方法
getElementById();
getElementsByTagName();
var images=document.getElementsByTagName(“img”);
alert(images.length);
alert(images.item(0).src);
alert(images[0].src);
//文档写入 write(),writeln(),open(),clost();
document.writeln(“当前的时间是:”+new Date()+”;”);
//取得属性
var div=document.getElementById(“div”);
alert(div.getAttribute(“id”));
alert(div.getAttribute(“title”));
alert(div.getAttribute(“class”));
alert(div.getAttribute(“dir”));
//设置属性
div.setAttribute(“id”,”someId”);
div.setAttribute(“class”,”someClass”);
//创建元素
var dir=document.createElement(“div”);
//为元素的属性复制
dir.id=”someId”;
dir.class=”someClass”;
dir.height=”200″+”px”;
dir.width=”200″+”px”;
//将创建的元素加入到document.body元素中去
document.body.appendChilde(div);
var dir=document.createElement(“<div…>”);

–>

版权声明:本文博客原创文章。博客,未经同意,不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117346.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 正则匹配数组全部是数字[通俗易懂]

    正则匹配数组全部是数字[通俗易懂]var value=[“2″,”3”]   varv=value.join(“”);varreg=/^\d+$/g;if(!v.match(reg)){//是否匹配到了数字,未匹配到就不是return;}if(v.match(reg)[0].lengthreturn;}

    2022年6月17日
    59
  • 解析土豆视频下载地址以及硕鼠网原理

    解析土豆视频下载地址以及硕鼠网原理

    2021年8月20日
    127
  • win10环境下不通过cppan编译tesseract4.1动态库[通俗易懂]

    win10环境下不通过cppan编译tesseract4.1动态库[通俗易懂]在我的博客中,写了几篇关于tesseract如何编译Windows环境下的dll库,但那几篇都是基于cppan的环境依赖,而cppan的官方网站在2021年1月已经正式关闭了,因此那种方式将无法下载到对应的依赖环境,根据tesseract官方文档是使用SW的方式进行依赖下载,因此这篇博客将讲解使用基于SW的编译方式。1SW的环境配置在SW官方地址上下载sw.exe。将下载的sw.exe所在路径添加到系统环境变量PATH下。以管理员权限打开cmd,输入命令:swsetup这个命令主要是在用

    2022年9月30日
    0
  • bat批量删除文件后缀_怎么批量删除文件名中的数字

    bat批量删除文件后缀_怎么批量删除文件名中的数字起因一个字,懒!但是机器做简单重复的事,都不会这么觉得~反而可能乐在其中哈!具体操作用bat命令批量操作,新建一个.bat文件(就是.txt文件改一下后缀),然后用文本格式打开,键入:@echooffSetlocalEnabledelayedexpansionset”str=想要去掉的字符串”for/f”delims=”%%iin(‘dir/b*.*…

    2022年9月24日
    0
  • ORA-01017: invalid username/password; logon denied Oracle数据库报错解决方案一

    ORA-01017: invalid username/password; logon denied Oracle数据库报错解决方案一ORA-01017:invalidusername/password;logondenied错误(程序中的用户和密码无法登录,登录被拒)。Oracle11g版本初次安装使用报错:解决方法1创建新用户:打开sqlplus以系统身份登录:指令如下sys/managerassysdba;创建新用户:语法:createuser用户名identifiedb…

    2022年5月6日
    155
  • gcc基本命令_cmake 命令

    gcc基本命令_cmake 命令介绍GCC(英文全拼:GNUCompilerCollection)是GNU工具链的主要组成部分,是一套以GPL和LGPL许可证发布的程序语言编译器自由软件,由RichardStallman于1985年开始开发。GCC原名为GNUC语言编译器,因为它原本只能处理C语言,但如今的GCC不仅可以编译C、C++和Objective-C,还可以通过不同的前端模块支持各种语言,包括Java、Fortran、Ada、Pascal、Go和D语言等等。编译过程GC

    2022年10月13日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号