<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>jQuery选择器</title>
<script src="js/jquery-3.3.1.min.js"></script>
<style>
#box{width: 100px; height: 100px; background-color: coral}
.box{width: 100px; height: 100px; background-color: lightgreen}
</style>
</head>
<body>
<script>
$(document).ready(function () {
/**
* 基本选择器
* $('#id名')根据给定的id来匹配到元素
* $('.class名')根据给定的class来匹配到元素
* $('element')根据给定的标签名来匹配到元素
* $('*')匹配所有元素
* $('#id,.class名,element')匹配到页面中多个选择器
*/
$('#box').css('background-color', 'red');
$('.box').css('background-color', 'lightyellow');
$('span').css('font-size', '20px');
$('*').css('font-family', '楷体');
$('#box,.box,span').css('color', 'lightgreen');
//-----------------------------------------------------
/**
* 层级选择器 (相当于父类和子类的元素关系)
* 给定的父级元素下匹配所有的子元素: $('父级元素 > 子级元素')
* 给定的祖先元素下匹配所有的后代元素: $('祖先元素 后代元素')
* 匹配紧跟在prev元素后面的next元素: $('prev + next')(同级的元素)
* 匹配prev元素后面所有的siblings元素:$('prev ~ siblings')
*/
$('ul > li').css('list-style', 'none');
$('ul li').css('list-style', 'none');
$('span + input').css('height', '60px');
$('span ~ input').css('border', '2px');
//-----------------------------------------------------
/**
* 顺序选择器
* 1、顺序
* $(':first') 第一个元素
* $(':last') 最后一个元素
* 2、比较(x的顺序是从0开始)
* $(':gt(x)')表示大于值x的元素
* $(':lt(x)')表示小于值x的元素
* $(':eq(x)')表示等于值x的元素
* 3、奇偶数
* $(':odd')奇数顺序
* $(':even')偶数顺序
* 4、非
* $(':not(selector)')匹配不是selector的所有元素
*/
$('p:first').css('color', '#ee9e00');
$('p:last').css('color', '#ee5bd7');
$('p:gt(1)').css('font-size', '22px');
$('p:lt(4)').css('background-color', '#1a84ff');
$('p:eq(5)').css('background-color', '#ff09b6');
$('p:odd').css('color', '#ffffff');
$('p:even').css('font-size', '35px');
$('p:not(#five)').css('height', '60px');
//-----------------------------------------------------
/**
* 内容选择器
* $(':contains(text)') 匹配包含给定文本(text)的元素
* $(':has(selector)')匹配包含特定选择器元素的元素
* $(':empty')匹配不含有内容的元素(即 不包含子元素或者文本的空元素)
* $(':parent')匹配含有子元素或者文本的元素
*/
$('div:contains(时人不识凌云木,直待凌云始道高。)').css('background-color', '#dbffc2');
$('div:has(p)').css('height', '60px');
$('div:empty').css('background-color', '#856b88');
$('div:parent').css('background-color', '#05dfff');
//-----------------------------------------------------
/**
* 属性选择器
* $('[属性名]')匹配包含给定属性的元素
* $('[attribute=value]')匹配给定属性是某个特定值的元素
* $('[attribute!=value]')匹配所有不含有指定值的属性,或者说是属性不等于特定值的元素
* $('[attribute ^= value]')匹配给定属性是以某些值开始的元素
* $('[attribute $= value]')匹配给定属性是以某些值结尾的元素
* $('[attribute *= value]')匹配给定属性包含某些值的元素
* $('attrSel[1] attrSel[1] attrSel[1]')
*/
$('input[type]').css('background', 'pink');
$('input[type=button]').css('background', '#ee9e00');
$('input[type!=text]').css('background', '#c728ff');
$('input[type ^=t ]').css('background', 'red');
$('input[type $=n ]').css('background', '#d1f5b9');
$('input[type *=o ]').css('background', 'blue');
$('input[id][name*=n]').css('background', '#78ff50');
//-----------------------------------------------------
/**
* 表单选择器
* $(':enabled')所有激活的input元素(可以使用的input元素)
* $(':disabled')所有禁用的input元素(不可以使用的input元素)
* $(':selected')所有被选取的元素,针对于select元素
* $(':checked')所有被选中的input元素
*/
$(':enabled').css('background','#ff2c57');
$(':disabled').css('background','#d1f5b9');
$(':selected').css('color','blue');
$(':checked').parent().css('color','#ee9e00');
})
</script>
<div id="box">江月何年初照人</div>
<div>孤帆远影碧空尽</div>
<span>江畔何人初见月</span>
<hr>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<div><li>4</li></div>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ul>
<form action="">
<span>评论</span>
<input type="text" placeholder="说点什么吧~">
<input type="button" value="发表">
</form>
<hr>
<p>1</p>
<p>2</p>
<p>3</p>
<p>4</p>
<p id="five">5</p>
<p>6</p>
<hr>
<div>君不见,黄河之水天上来,奔流到海不复回。</div>
<div>时人不识凌云木,直待凌云始道高。</div>
<div>君不见,高堂明镜悲白发,朝如青丝暮成雪。</div>
<div>壮心未与年俱老,死去犹能作鬼雄。</div>
<div><p>壮志饥餐胡虏肉,笑谈渴饮匈奴血。</p></div>
<div style="width: 100%; height: 30px"></div>
<hr>
<form action="">
<label for="">1</label>
<input type="text" id="a"> <br>
<label for="">2</label>
<input type="email" id="b"> <br>
<label for="">3</label>
<input type="password"> <br>
<label for="">4</label>
<input type="button" value="按钮"> <br>
<label for="">5</label>
<input type="radio"> <br>
</form>
<hr>
<form>
输入框1<input type="text" name=""><br>
输入框2<input type="text" name=""><br>
输入框3<input type="text" name="" disabled><br>
输入框4<input type="text" name=""><br>
<select>
<option>摩羯座</option>
<option selected>双鱼座</option>
<option>射手座</option>
<option>天蝎座</option>
</select>
<br>
爱好:
<label><input type="checkbox" name="">看书</label>
<label><input type="checkbox" name="" checked>游泳</label>
<label><input type="checkbox" name="">游戏</label>
</form>
</body>
</html>