添加元素
语法:.
$(selector)add(selector)
$(selector).add(html)
$(selector).add(jQueryObject)
$(selector).add(selector, context)
$(selector).add(element)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="./jquery-3.3.1/jquery-3.3.1.js"></script>
<script src="./jquery-3.3.1/jquery-3.3.1.min.js"></script>
</head>
<body>
<div id="box">
<div id="box2">
<div id="box3">
<p id="info">sadadasssasd</p>
<ul>
<li class="item-1">1</li>
<li class="item-2">2</li>
<li class="item-3">3</li>
<li class="item-4">4</li>
<li class="item-5">5</li>
<li class="item-6">6</li>
<li class="item-7">7</li>
<li class="item-8">8</li>
<li class="item-9">9</li>
</ul>
</div>
</div>
</div>
<script>
$(function () {
// 添加元素
console.log($('.item-1,.item-2'));
console.log($('.item-2').add('.item-3'));
// add()可以添加多个
console.log($('.item-4').add('.item-5').add('.item-6'));
// 删除元素
// 删除选择器元素
console.log($('li').not('.item-4'));
// 留下选择器元素
console.log($('li').filter('.item-4'));
})
</script>
</body>
</html>
第二种删除元素的写法
console.log($('li').not(function (index) {
// $(this)会返回每一次Jquery对象
return $(this).hasClass('item-4')
}));
console.log($('li').filter(function (index) {
// $(this)会返回每一次Jquery对象 hasClass:判断
return $(this).hasClass('item-4');
}));
筛选方法:has() 方法返回拥有匹配指定选择器的一个或多个元素在其内的所有元素。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="./jquery-3.3.1/jquery-3.3.1.js"></script>
<script src="./jquery-3.3.1/jquery-3.3.1.min.js"></script>
</head>
<body>
<div id="box">
<div id="box2">
<div id="box3">
<p id="info">sadadasssasd</p>
<ul>
<li class="item-1">1</li>
<li class="item-2">2</li>
<li class="item-3">3</li>
<li class="item-4">4</li>
<li class="item-5">5</li>
<li class="item-6">6<p></p></li>
<li class="item-7">7</li>
<li class="item-8">8</li>
<li class="item-9">9</li>
</ul>
</div>
</div>
</div>
<script>
$(function () {
// 筛选元素:判断p在li中哪里,有就打印出来
console.log($('li').has('p'));
})
</script>
</body>
</html>
slice()方法:slice() 把匹配元素集合缩减为指定的指数范围的子集。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="./jquery-3.3.1/jquery-3.3.1.js"></script>
<script src="./jquery-3.3.1/jquery-3.3.1.min.js"></script>
</head>
<body>
<div id="box">
<div id="box2">
<div id="box3">
<p id="info">sadadasssasd</p>
<ul>
<li class="item-1">1</li>
<li class="item-2">2</li>
<li class="item-3">3</li>
<li class="item-4">4</li>
<li class="item-5">5</li>
<li class="item-6">6<p></p></li>
<li class="item-7">7</li>
<li class="item-8">8</li>
<li class="item-9">9</li>
</ul>
</div>
</div>
</div>
<script>
$(function () {
//未指定结尾,会全部打印下去
console.log($('li').slice(0));
// 从第三个元素后,一直打印下去
console.log($('li').slice(3));
// 打印4,5 左闭右开的区间,(3,5]
console.log($('li').slice(3,5));
})
</script>
</body>
</html>
转换元素
map(callback):转换成另一个jquery对象
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="./jquery-3.3.1/jquery-3.3.1.js"></script>
<script src="./jquery-3.3.1/jquery-3.3.1.min.js"></script>
</head>
<body>
<div id="box">
<div id="box2">
<div id="box3">
<ul>
<li class="item-1">1</li>
<li class="item-2">2</li>
<li class="item-3">3</li>
<li class="item-4">4</li>
<li class="item-5">5</li>
<li class="item-6">6<p></p></li>
<li class="item-7">7</li>
<li class="item-8">8</li>
<li class="item-9">9</li>
</ul>
</div>
</div>
</div>
<script>
$(function () {
// 转换成另一个Jquery对象
console.log($('div').map(function (index,domElement) {
// return this.id;
return domElement.id;
}))
})
</script>
</body>
</html>
遍历元素
each(iterator):each() 方法规定为每个匹配元素规定运行的函数。
提示:返回 false 可用于及早停止循环。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="./jquery-3.3.1/jquery-3.3.1.js"></script>
<script src="./jquery-3.3.1/jquery-3.3.1.min.js"></script>
</head>
<body>
<div id="box">
<div id="box2">
<div id="box3">
<ul>
<li class="item-1">1</li>
<li class="item-2">2</li>
<li class="item-3">3</li>
<li class="item-4">4</li>
<li class="item-5">5</li>
<li class="item-6">6<p></p></li>
<li class="item-7">7</li>
<li class="item-8">8</li>
<li class="item-9">9</li>
</ul>
</div>
</div>
</div>
<script>
$(function () {
// 遍历元素
console.log($('li').each(function (index,domElement) {
// 增加title属性,给title遍历li里的文本
this.title = this.innerText;
}))
})
</script>
</body>
</html>
each()终止循环
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="./jquery-3.3.1/jquery-3.3.1.js"></script>
<script src="./jquery-3.3.1/jquery-3.3.1.min.js"></script>
</head>
<body>
<div id="box">
<div id="box2">
<div id="box3">
<ul>
<li class="item-1">1</li>
<li class="item-2">2</li>
<li class="item-3">3</li>
<li class="item-4">4</li>
<li class="item-5">5</li>
<li class="item-6">6<p></p></li>
<li class="item-7">7</li>
<li class="item-8">8</li>
<li class="item-9">9</li>
</ul>
</div>
</div>
</div>
<script>
$(function () {
// 遍历元素
console.log($('div').each(function (index,domElement) {
if (this.id === 'box2') {
return false;
}
// 增加title属性,给title遍历li里的文本
this.title = this.id;
}))
})
</script>
</body>
</html>