美文网首页
javaScript进阶的进阶

javaScript进阶的进阶

作者: 十六只猴子王 | 来源:发表于2019-04-10 19:56 被阅读0次
image.png

1. 元素对象,Element对象

要操作element对象,首先要获取到element,使用document里面相应的方法获取

  • 方法:
    获取属性里面的值
    getAttribute("属性名称")
var input1 = document.getElementById("inputid");
alert(input1.getAttibute("value");

设置属性的值
input.setAttrbute("class","haha");
删除属性
input1.removeAttibute("name");
⚠️:不能删除value

想要获取标签下面的子标签
使用属性childNodes,但是这个属性兼容性不强
获得标签下面子标签的唯一方法是使用getElementsByTagName方法

var ul = document.getElementById("ulid");
//获取ul下面的子标签
//var lis = ul.childNodes;
//alert(lis.length);
var lis = ul.getElementsByTagName("li");
alert(lis.length);

3. Node对象属性

nodeName
nodeType
nodeValue

  • 标签节点对应的值:

nodeName:1
nodeType:大写标签名称 eg:SPAN
nodeValue:null

  • 属性节点对应的值:

nodeName:2
nodeType:属性名称
nodeValue:属性的值

  • 文本节点对应的值:

nodeName:3
nodeType:#text
nodeValue:文本内容


4. Node对象的属性二

<ul>
  <li id="li1">1111</li>
  <li id="li2">222</li>
  <li id="li3">222</li>
  <li id="li4">222</li>
  • 父节点
    ul是li的父节点

  • 字节点:
    li是ui的字节点
    childNodes:得到所有字节点,但是兼容性差
    firstChild:获取第一个字节点

var ul1 = document.getElementById("ulid");
var li1 = ul1.firstChild;
alert(li1.id)

lastChild:获取最后一个字节点

  • 同辈节点
    li直接关系是同辈节点
    nextSibling:返回一个给定节点的下一个兄弟节点
    previousSibling:返回一个给定节点的上一个兄弟节点
var li3 = document.getElementById("li3");
alert(li3.previousSibling.id);

5. 操作dom树

  • appendChlid方法
    添加节点到末尾
    特点:类似于剪切粘贴的效果

  • insertBefore(newNode,oleNode)方法
    在某个节点之前添加一个新的节点
    两个参数:要插入的节点,在谁之前插入
    插入一个节点,节点不存在,创建:
    1.创建标签 createElement
    2.创建文本 createTextNode
    3.把文本添加到标签下面 InsertBefore

  • 删除节点:removeChlid方法:删除节点,通过父节点删除,不能自己删除自己
    1.获取标签 document.getElementById("id名称");
    2.获取父节点标签 document.getElementById("父节点名称");
    3.执行删除(通过父节点删除)父节点对象.removeChlid(子节点对象);

  • 替换节点:replaceChlid(newNode,oldNode)方法
    两个参数:新的节点(替换成的节点),被替换的节点
    同样不能自己替换自己,需要通过父节点来替换

  • 复制节点:cloneNode(boolean)

//把ul列表复制到另外一个div里面去
/*1.获取到ul
2.执行复制方法cloneNode方法复制true
3.把复制之后的内容放到div里面去
获取div
appendchild方法*/
var ul = document.getElementById("ulid");
var ulcopy = ul.cloneNode(true);
var div = document.getElementById("divid");
div.appendchild(ulcopy);
  • 查找节点:

getElementById():通过id属性,查找节点
getElementsByName():通过节点的name属性,查找节点
getElementsByTagName():通过节点的标签,查找节点

  • 插入节点:

appendChild()方法:添加节点到末尾,相当于剪贴
insertBefore()方法:添加节点到某个节点之后

  • 替换节点:

replaceChild()方法:通过父节点替换

  • 删除节点:

removeChild()方法:通过父节点删除


6.innerHTML属性

  • 不是dom的组成部分,但是大部分浏览器都支持
    作用一:获取文本内容
    作用二:向标签中设置内容(可以是html代码)

向div中添加一个表格

var tab = "<table border = '1'><tr><td>aaaa</td></tr>
<tr><td>bbb</td></tr><tr><td>ccc</td></tr></table>"

var tab = "<table>";
tab += "</table>";//相当于var tab = "<table></table>";



相关文章

  • JavaScript学习笔记(五)

    慕课网JavaScript进阶篇第9章学习笔记 JavaScript进阶篇—第9章 JavaScript学习笔记(...

  • #30天专注橙长计划#向前端工程师进发#day0#航线设计

    发现问题,路线大修。 学习方面:暂定按HTML入门→CSS入门→HTML进阶→CSS进阶→JavaScript入门...

  • javaScript进阶的进阶

    1. 元素对象,Element对象 要操作element对象,首先要获取到element,使用document里面...

  • 技术书刊

    Javascript# ########《JavaScript设计模式》《高性能网站建设指南》《高性能网站建设进阶...

  • 进阶篇:浏览器渲染 & 白屏和FOUC(1)

    饥人谷学习进阶第 1 天 JavaScript 网页 = Html + CSS + JavaScript Html...

  • 0. JavaScript学习资料汇总

    JavaScript教程 - 廖雪峰的官方网站 JavaScript入门篇 - 慕课网 JavaScript进阶篇...

  • 前端心得

    1.基础阶段:HTML+CSS 2.js阶段:JavaScript基础、JavaScript进阶、JavaScri...

  • javascript进阶

    1. 数组及操作方法 数组就是一组数据的集合,javascript中,数组里面的数据可以是不同类型的。 定义数组的...

  • JavaScript进阶

    对象 声明对象 对象的'.'操作符 读取对象 调用方法 设置属性值 对象的'[]'操作符 注:和'.'操作符类似,...

  • JavaScript进阶

    JavaScript能做什么? 1.增强页面动态效果(如下拉菜单,图片轮播,信息滚动等等) 2. 实现页面与用户之...

网友评论

      本文标题:javaScript进阶的进阶

      本文链接:https://www.haomeiwen.com/subject/mcdwiqtx.html