<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>dom</title>
    <script>
    /**
     * 子节点              childNode (有兼容问题)
     * ie6-8              没问题
     * nodeType==3  文本节点
     * nodeType==1  元素节点
     * children     都兼容
     * 父节点        parentNode
     * 有定位的父级   offsetParent
     * 首尾节点(有兼容问题)
     * ie6-8                      (chrome)
     * firstChild                firstElementCHild
     * lastChild                 lastElementChild
     * 兄弟节点(有兼容问题)
     * nextSibling               nextElementSibling
     * previousSibling           previousElementSibling
     *
     * dom操作属性
     * 获取  getAttribute(名称)
     * 设置  setAttribute(名称、值)
     * 删除  removeAttribute(名称)
     * 根据class获取元素函数的封装
     *
     * dom的应用
     * 创建dom元素                              creatElement(标签名)
     * 追加节点                                 appendChild(节点)
     * 在原有节点前插入节点                       insertBefor(节点,原有节点)
     * 删除节点                                 removeChild(节点)
     */
    function getByClass(oParent, sClass) {
        var oResult = [];
        var oEle = oParent.getElementsByTagName('*');
        for (var i = 0; i < oEle.length; i++) {
            if (oEle[i].className == sClass) {
                oResult.push(oEle[i]);
            }
        }
        return oResult;
    }
    window.onload = function() {
        var oUl = document.getElementById("ul1");
        var oLi = getByClass(oUl, "item");
        for (var i = 0; i < oLi.length; i++) {
            oLi[i].style.background = "red";
        }
    }
    </script>
</head>

<body>
    <ul id="ul1">
        <li></li>
        <li class="item"></li>
        <li></li>
        <li class="item"></li>
        <li></li>
    </ul>
</body>

</html>

dom 笔记的更多相关文章

  1. DOM笔记(十):JavaScript正则表达式

    一.RegExp ECMAScript通过RegExp类型类支持正则表达式,语法和Perl类似: var exp = /pattern/flags; patternb部分是任何简单的或复杂的正则表达式 ...

  2. DOM笔记(七):开发JQuery插件

    在上一篇笔记本中,讲解了如何利用jQuery扩展全局函数和对象:DOM笔记(六):怎么进行JQuery扩展? 在这篇笔记本中,将开发一个简单的动画插件,名称是example-plugin,用其实现一个 ...

  3. DOM笔记(五):JavaScript的常见事件和Ajax小结

    一.常见事件类型 1.鼠标事件 事件名称 说明 onclick 鼠标单击时触发 ondbclick 鼠标双击时触发 onmousedown 鼠标左键按下时触发 onmouseup 鼠标释放时触发 on ...

  4. DOM笔记(四):HTML 5 DOM复杂数据类型

    HTML 5 DOM定义了一下集合.列表等复杂的数据类型用于实现便捷的操作.相对于HTML 4 DOM,HTML 5 DOM增加了HTMLCollection.DOMTokenList.DOMStri ...

  5. DOM笔记(三):Element接口和HTMLElement接口

    一.Element接口 Element接口表示一个元素,该接口扩展自Node接口,自然继承了Node接口的属性和方法,也有一套针对元素的属性和方法. Element接口常见的属性比较少,常用的就是一个 ...

  6. DOM笔记(二):Node接口

    所有的节点都使用Node接口来表示,可以使用很多方法去获取节点,如document.getElementsByTagName().document.getElementsByName()等均返回一个N ...

  7. DOM笔记(一):HTMLDocument接口

    操作HTML文档的第一步就是获取对文档元素的引用,每一个元素在DOM中就是一个节点,所有的元素在DOM中构成一个节点树. 用于获取元素节点定义的方法定义于HTMLDocument接口,window.d ...

  8. DOM笔记(十):JavaScript正則表達式

    一.RegExp ECMAScript通过RegExp类型类支持正則表達式,语法和Perl类似: var exp = /pattern/flags; patternb部分是不论什么简单的或复杂的正則表 ...

  9. DOM笔记(十三):JavaScript的继承方式

    在Java.C++.C#等OO语言中,都支持两种继承方式:接口继承和实现继承.接口继承制继承方法签名,实现继承则继承实际的方法和属性.在SCMAScript中,由于函数没有签名,所以无法实现接口继承, ...

  10. DOM笔记(十二):又谈原型对象

    因为之前谢过一篇关于原型对象的笔记:浅谈JavaScript中的原型模式.现在我又重新看到这个话题,对原型有了进一步的理解,所以,又要谈谈原型对象. 一.理解原型对象 创建的每一个函数都有一个prot ...

随机推荐

  1. 问题-"Record not found or changed by another user"

    回答1:===============================================================问题:clientdataset“Record not found ...

  2. 使用CSS3(一)

    开发商前缀(vendor prefix) 前缀 浏览器 -moz- Firefox -webkit- Chrome和Safari(它们的引擎都是WebKit) -ms- Internet Explor ...

  3. 【三支火把】---C语言面试问题总结

    看了一份关于HR在面试一名C程序员可能提问的问题手册,学到了很多,很多都是一些琐碎的知识点,总是你写过很多大型的C程序,但是我敢说,里面也有你没掌握的东西. 1.全局变量和局部变量有何区别? 答:全局 ...

  4. springboot 详细配置2

    # =================================================================== # COMMON SPRING BOOT PROPERTIE ...

  5. js修改input的type属性问题

    js修改input的type属性有些限制.当input元素还未插入文档流之前,是可以修改它的值的,在ie和ff下都没问题.但如果input已经存在于页面,其type属性在ie下就成了只读属性了,不可以 ...

  6. java 5 ReadWriteLock

    import java.util.ArrayList; import java.util.List; import java.util.concurrent.locks.ReadWriteLock; ...

  7. (二)Java对象与内存控制

    一.java的类变量和实例变量: java中的变量可分成两种:成员变量和局部变量. 1.局部变量包括以下几类: 方法内的局部变量:作用域为方法体. 代码块内的局部变量:作用域为代码块 形参:方法内的形 ...

  8. jfinal上传下载

    1. 上传 <form id="form1" method="post" enctype="multipart/form-data" ...

  9. 标准I/O库之每次一行I/O

    下面两个函数提供每次输入一行的功能. #include <stdio.h> char *fgets( char *restrict buf, int n, FILE *restrict f ...

  10. 【转】C++里定义全局变量和函数常用方法

    http://blog.csdn.net/niying/article/details/637084 1:在头文件是声明变量,然后在使用的文件中用exten标识. ".h": in ...