JQuery DOM

DOM

JavaScript DOM 的操作用 JQuery 的方法从新实现一遍。


获取元素

// id
$('#id')

// class
$('.className')

// tagName
$('tag')

/*
 上面三个对应的就是 getElements... 三个方法
*/

二级查找

/*
例如这种结构
<div>
 <p>...</p>
</div>
*/

// 下面两种是JQuery 二级查找的方法,JQuery 的选择器语法可以参考 “CSS 教程 - 选择器”
// $('div p') 返回的是一个 JQuery 对象,里面包含了元素的集合,$('div p')[0] 通过索引可以获取到集合里面的元素 [object HTMLParagraphElement]
$('div p')
$('div').find('p')

对象筛选

$('div').parent() // 当前元素的父元素
$('div').first() // 元素集合的第一个元素
$('div').last() // 元素集合的最后一个元素
$('div').eq(0) // 指定获取元素集合中第几个元素
$('div').next() // 当前元素的下一个元素
$('div').prev('.active') // 过滤掉 class=".active" 的 div 元素

元素遍历

/*
 <ul>
  <li>1</li>
  <li>2</li>
  <li>3</li>
 </ul>
*/

// each 方法
$('ul li').each(function(index, li) {
 console.log(index) // 当前索引
 console.log(li) // 当前元素
})

/*
遍历结果
0 | <p>1</p>
1 | <p>2</p>
2 | <p>3</p>
*/

操作元素

内容

/*
 <div>
  <p>内容</p>
 </div>
*/

console.log($('div').eq(0).html()) // <p>内容</p> | 获取 div 里面的所有内容,包括 HTML
console.log($('div').eq(0).text()) // 内容 | 获取文本内容
		
$('div').eq(0).html('为空是获取,写上内容就是修改')

/*
 $().eq().find().css()... 只要返回的结果是 JQuery 对象,就能一直 “.” 下去
 这样特性在 JQuery 中被称为 “连缀”
*/

属性

$().attr('class') // 获取属性
$().attr('class', 'red') // 修改属性
$().removeAttr() // 移除属性

样式

$().css('color', '#ccc') // 设置颜色
$().css('background', '#ccc') // 设置背景颜色,语法同 “css”

大小

/*
 大小是一组方法 .width() & .height()
*/

$(window).width() // 浏览器窗口大小
$(document).width() // 内容可视区域大小
$('div').width() // 指定区域大小

插入元素

// <ul></ul>

// 下级插入
$('ul').prepend('<li>1</li>') // 开头
$('ul').append('<li>2</li>') // 结尾

// 同级插入
$('ul li').eq(0).after($('ul').html()) // 之后
$('ul li').eq(0).before($('ul').html()) // 之前

移除元素

$('body').remove() // 整个页面都被移除了
相关文章
JQuery对象与DOM对象的区别和转换10/23/2018, 2:18:18 PM
JQuery 教程 JQuery 入门 JQuery DOM JQuery 表单 JQuery Ajax JQuery 事件 JQuery 切换效果
更多教程 HTML5 教程 CSS3 教程 JavaScript 教程 JQuery 教程 React.js 教程 Node.js 教程 Koa2 教程 Python 教程 Linux 教程