JS4,Dom

  • 当网页被加载时,浏览器会创建页面的文档对象模型

  • dom元素指的是页面的标签,通过任意一个dom元素的关系可以找到当前页面其他任意的一个dom元素

  • node节点指的是页面的任意元素(页面的每个东西都是节点), 标签 换行符 注释 空格 属性 标签内容等都可以被当做node节点既然是节点,也是可以被js选中的

  • 当文档/页面加载完毕后才会执行onload函数

    • window.onload = function(){

  • id选择:var p1 = document.getElementById('p1');

  • 通过标签名选:var h2=document.getElementsByTagName('h2');

  • 通过class:getElementsByClassName()函数的返回值是一个数组

  • 通过标签name属性:var li = document.getElementsByName('hobbys')

  • 添加事件的两种方式

    • 方式1 : DOM对象的onclick属性

    • innerBox.onclick = function(){}

    • 方式2 : 在标签中定义事件,事件触发函数

  • input 获取内容使用value,option也是使用value属性来获取值

    • var num1 = document.getElementById('num1').value;

    • 把字符串内容转换number:num1 = parseInt(num1);

    • innerHTML属性是来给标签设定展示给用户的内容

    • document.getElementById('result').innerHTML= (num1 + num2);

  • p1.innerHTML = '<h1>MSR学院</h1>';

    • 会把插入的html解析了

  • p2.innerText = '<h1>MSR学院</h1>';

    • 插入纯文本

  • setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。

    • var id = setInterval('jump()',1000);

  • 清除计时器:clearInterval(id);

  • document.write(new Date()) ;:该方法会重置页面:原有内容会消失

  • nextSibling属性返回元素节点之后的兄弟节点(包括文本节点、注释节点即回车、换行、空格、文本等等);

    • var p4 = p3.nextSibling;

  • nextElementSibling属性只返回元素节点之后的兄弟元素节点 (不包括文本节点、注释节点);

    • var p4 = p3.nextElementSibling;

  • firstChild 找到第一个孩子节点,包括回车空格等文本在内.

    • var p1 = box.firstChild;

    • var p1 = box.firstElementChild;

  • childNodes 属性返回所有的节点,包括文本节点、注释节点;

    • var ps = box.childNodes;

  • children 属性只返回元素节点;

    • var ps = box.children;

  • 每个标签有一个 nodeType的属性 用于标明 当前标签的类型.

    • nodeType == 1 表示的是元素节点 记住 元素就是标签

  • splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。

    • cNodes.splice(index,1);

  • 内存中创建标签:var pEle = document.createElement('p');

  • //插入节点 父节点.appendChild();:boxEle.appendChild(pEle);

  • 父节点.insertBefore(要插入的节点,参考节点);

    • boxEle.insertBefore(img, pEle);

  • 父节点.removeChild(子节点)。

    • document.body.removeChild(p1);

    • 链式编程:p1.parentNode.removeChild(p1);

  • var p1_clone = p1.cloneNode(true);

    • true为深度克隆 ; 不然只会克隆标签本身

    • var p1_clone = p1.cloneNode();

    • 在script标签前面插入

    • document.body.insertBefore(p1_clone,script);

  • 获取:getAttribute(名称)

    • pEle.getAttribute('title')

  • 设置:setAttribute(名称, 值)

    • pEle.setAttribute('title','你愁啥!');

  • 删除:removeAttribute(名称)

    • pEle.removeAttribute('title');

  • 获取danger的下标位置

    • var index = clazzArr.indexOf('danger');

  • 把数组变为字符串

    • clazzStr = clazzArr.join(' ');

  • 根据索引值移除danger

    • clazzArr.splice(index,1);

posted on 2024-01-17 16:35  とんぽ  阅读(38)  评论(0)    收藏  举报

导航