DOM操作

作者: cccccccc7355608 | 来源:发表于2017-09-30 15:18 被阅读0次

    dom对象的innerText和innerHTML有什么区别?

    • innerText 是一个可写属性,返回元素内包含的文本内容,在多层次的时候会按照元素由浅到深的顺序拼接其内容。设置innerText 属性时,给定的值都会被视为文本内容,即使其中包含 HTML 标签
    • innerHTML 返回元素的 HTML 结构,在写入时会自动构建 DOM

    elem.children和elem.childNodes的区别?

    • children 为只读属性,返回一个节点的子元素(元素子节点),是一个动态更新的 HTMLCollection
    • childNodes 返回包含指定节点的子节点的集合,包括文本子节点,该集合为即时更新的集合(live collection)

    查询元素有几种常见的方法?ES5的元素选择方法是什么?

    document.getElementById()
    document.getElementsByClassName()
    document.getElementsByTagName()
    document.getElementsByName()
    // 以下为 ES5 新增的方法
    document.querySelector() // => 只能获取第一个
    document.querySelectorAll()
    

    如何创建一个元素?如何给元素设置属性?如何删除属性?

    // 创建元素
    var script = document.createElement('script')
    // 设置属性
    script.setAttribute('src', 'xxx')
    // 删除属性
    script.removeAttribute('src')
    

    如何给页面元素添加子元素?如何删除页面元素下的子元素?

    // 如上,虽然创建了新的 script 元素,却没有添加到文档中
    var body = document.getElementsByTagName('body')[0]
    body.appendChild(script)
    // 删除子元素
    body.removeChild(script)
    

    element.classList有哪些方法?如何判断一个元素的 class 列表中是包含某个 class?如何添加一个class?如何删除一个class?

    element.classList.add() // 新增 class
    element.classList.remove() // 删除 class
    element.classList.toggle() // 新增/删除切换
    element.classList.contains() // 判断是否拥有 class,返回值为boolean
    

    如何选中如下代码所有的li元素? 如何选中btn元素?

    <div class="mod-tabs">
       <ul>
           <li>list1</li>
           <li>list2</li>
           <li>list3</li>
       </ul>
       <button class="btn">点我</button>
    </div>
    
    // 选取 li 元素
    // 1
    var li_1 = document.getElementsByTagName('li')
    // 2
    var li_2 = document.getElementsByTagName('ul').childNodes
    // 3
    var li_3 = document.querySelectorAll('li')
    // 选中 btn 元素
    // 1
    var btn_1 = document.getElementsByClassName('btn')[0]
    // 2
    var btn_2 = document.getElementsByTagName('button')
    // 3
    var btn_3 = document.querySelector('.btn')
    // 4
    var btn_4 = document.querySelector('button')
    

    相关文章

      网友评论

          本文标题:DOM操作

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