DOM操作

2017-09-30  本文已影响0人  cccccccc7355608

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


elem.children和elem.childNodes的区别?


查询元素有几种常见的方法?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')
上一篇下一篇

猜你喜欢

热点阅读