五、JQuery
JQuery的一些属性和方法的使用有别于JS,要对照API进行练习不要混淆。
选择器练习
<!DOCTYPE>
<html>
<head>
<title>基本选择器练习</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<style type="text/css">
body{
font-family: "微软雅黑"
}
div,span {
width: 140px;
height: 140px;
margin: 20px;
background: #9999CC;
border: #000 1px solid;
float: left;
font-size: 17px;
font-family: Roman;
}
div.mini {
width: 40px;
height: 43px;
background: #CC66FF;
border: #000 1px solid;
font-size: 12px;
font-family: Roman;
}
input{ margin: 5px 5px; }
</style>
<!--引入jquery的js库-->
<script src="js/jquery-3.1.1.min.js"></script>
<script type="text/javascript">
//让整个页面加载完成
$(document).ready(function() {
/* ---------基本选择器练习--------- */
//改变元素名为 <div> 的所有元素的背景色为 #FF69B4" id="b1"
$("#b1").click(function(){
$("div").css("background-color","#FF69B4");
});
//改变 id 为 one 的元素的背景色为 #9ACD32" id="b2"
$("#b2").click(function(){
$("#one").css("background-color","#9ACD32");
});
//改变 class 为 mini 的所有元素的背景色为 #FF0033" id="b3"
$("#b3").click(function(){
$(".mini").css("background-color","#FF0033");
});
//改变所有元素的背景色为 #FDF5E6" id="b4"
$("#b4").click(function(){
$("*").css("background-color","#FDF5E6");
});
//改变所有的<span>元素和 id 为 two 的元素的背景色为 #FF1493" id="b5"
$("#b5").click(function(){
$("span,#two").css("background-color","#FF1493");
});
//改变所有的<span>元素和 id 为 two 的,id为one的,class为 mini的所有的元素的背景色为 #006400" id="b6"
$("#b6").click(function(){
$("span,#two,#one,.mini").css("background-color","#006400");
});
});
</script>
</head>
<body>
<input type="button" value=" 改变元素名为 <div> 的所有元素的背景色为 #FF69B4" id="b1" />
<input type="button" value=" 改变 id 为 one 的元素的背景色为 #9ACD32" id="b2" />
<input type="button" value=" 改变 class 为 mini 的所有元素的背景色为 #FF0033" id="b3" />
<input type="button" value=" 改变所有元素的背景色为 #FDF5E6" id="b4" />
<input type="button" value=" 改变所有的<span>元素和 id 为 two 的元素的背景色为 #FF1493"
id="b5" />
<input type="button"
value=" 改变所有的<span>元素和 id 为 two 的,id为one的,class为 mini的所有的元素的背景色为 #006400"
id="b6" />
<h1>天气冷了</h1>
<h2>天气又冷了</h2>
<div id="one">id为one</div>
<div id="two" class="mini">
id为two class是 mini
<div class="mini"> class是 mini</div>
</div>
<div class="one">
class是 one
<div class="mini"> class是 mini</div>
<div class="mini"> class是 mini</div>
</div>
<div class="one">
class是 one
<div class="mini01"> class是 mini01</div>
<div class="mini"> class是 mini</div>
</div>
<br>
<div id="mover">动画</div>
<br>
<span class="spanone"> span </span>
<span class="mini"> span class是mini </span>
</body>
</html>
<!DOCTYPE HTML>
<html>
<head>
<title>层级选择器</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<style type="text/css">
div,span {
width: 140px;
height: 140px;
margin: 20px;
background: #9999CC;
border: #000 1px solid;
float: left;
font-size: 17px;
font-family: Roman;
}
div.mini {
font-size: 14px;
height: 53px;
width: 47px;
background: #CC66FF;
border: #000 1px solid;
font-family: Roman;
}
input{ margin: 5px 5px; }
</style>
<!--引入jquery的js库-->
<script src="js/jquery-3.1.1.min.js"></script>
<script type="text/javascript">
$().ready(function() {
/* ---------层级选择器练习--------- */
//改变 <body> 内所有 <div> 的背景色为 #F08080" id="b1"
$("#b1").click(function(){
$("body div").css("background-color","#F08080");
});
//改变 <body> 内子 <div> 的背景色为 #FF0033" id="b2"
$("#b2").click(function(){
$("body>div").css("background-color","#FF0033");
});
//改变 id 为 one 的下一个 <div> 的背景色为 #0000FF" id="b3"
$("#b3").click(function(){
$("#one+div").css("background-color","#0000FF");
});
//改变 id 为 two 的元素后面的所有兄弟<div>的元素的背景色为 #9ACD32" id="b4"
$("#b4").click(function(){
$("#two~div").css("background-color","#9ACD32");
});
//改变 id 为 two 的元素所有 <div> 兄弟元素的背景色为 #FF6347" id="b5"
$("#b5").click(function(){
$("#two").siblings("div").css("background-color"," #FF6347");
});
})
</script>
</head>
<body>
<input type="button" value=" 改变 <body> 内所有 <div> 的背景色为 #F08080" id="b1" />
<input type="button" value=" 改变 <body> 内子 <div> 的背景色为 #FF0033" id="b2" />
<input type="button" value=" 改变 id 为 one 的下一个 <div> 的背景色为 #0000FF"
id="b3" />
<input type="button"
value=" 改变 id 为 two 的元素后面的所有兄弟<div>的元素的背景色为 #9ACD32" id="b4" />
<input type="button" value=" 改变 id 为 two 的元素所有 <div> 兄弟元素的背景色为 #FF6347"
id="b5" />
<h1>天气冷了</h1>
<div id="one">id为one</div>
<div id="two">
id为two
<div class="mini"> class是 mini</div>
</div>
<div class="one">
class是 one
<div class="mini"> class是 mini</div>
<div class="mini"> class是 mini</div>
</div>
<div class="one">
class是 one
<div class="mini01"> class是 mini01</div>
<div class="mini"> class是 mini</div>
</div>
<br>
<div id="mover">动画</div>
<br>
</body>
</html>
<!DOCTYPE HTML>
<html>
<head>
<title>基本过滤选择器</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<style type="text/css">
div,span {
width: 140px;
height: 140px;
margin: 20px;
background: #9999CC;
border: #000 1px solid;
float: left;
font-size: 17px;
font-family: Roman;
}
div.mini {
font-size: 14px;
height: 53px;
width: 47px;
background: #CC66FF;
border: #000 1px solid;
font-family: Roman;
}
input{ margin: 5px 5px; }
</style>
<!--引入jquery的js库-->
<script src="js/jquery-3.1.1.min.js"></script>
<script type="text/javascript">
$(function() {
/* ---------基本过滤选择器练习--------- */
//改变第一个 div 元素的背景色为 #FF6347" id="b1"
$("#b1").click(function(){
$("div").first().css("background-color","#FF6347");
});
//改变最后一个 div 元素的背景色为 #9ACD32" id="b2"
$("#b2").click(function(){
$("div").last().css("background-color","#FF6347");
});
//改变class不为 one 的所有 div 元素的背景色为 #FF0033" id="b3"
$("#b3").click(function(){
$("div[class!='one']").css("background-color","#FF0033");
});
//改变索引值为等于 3 的 div 元素的背景色为 #006400" id="b4"
$("#b4").click(function(){
$("div:eq(3)").css("background-color","#006400");
});
//改变索引值为小于 3 的 div 元素的背景色为 #FF69B4" id="b5"/>
$("#b5").click(function(){
$("div:lt(3)").css("background-color","#FF69B4");
});
//改变索引值为大于 3 的 div 元素的背景色为 #F08080" id="b6"
$("#b6").click(function(){
$("div:gt(3)").css("background-color","#F08080");
});
//改变索引值为偶数的 div 元素的背景色为 #FF6347" id="b7"
$("#b7").click(function(){
$("div:even").css("background-color","#FF6347");
});
//改变索引值为奇数的 div 元素的背景色为 #FF1493" id="b8"
$("#b8").click(function(){
$("div:odd").css("background-color","#FF1493");
});
})
</script>
</head>
<body>
<input type="button" value=" 改变第一个 div 元素的背景色为 #FF6347" id="b1" />
<input type="button" value=" 改变最后一个 div 元素的背景色为 #9ACD32" id="b2" />
<input type="button" value=" 改变class不为 one 的所有 div 元素的背景色为 #FF0033" id="b3" />
<input type="button" value=" 改变索引值为等于 3 的 div 元素的背景色为 #006400" id="b4" />
<input type="button" value=" 改变索引值为小于 3 的 div 元素的背景色为 #FF69B4" id="b5" />
<input type="button" value=" 改变索引值为大于 3 的 div 元素的背景色为 #F08080" id="b6" />
<input type="button" value=" 改变索引值为偶数的 div 元素的背景色为 #FF6347" id="b7" />
<input type="button" value=" 改变索引值为奇数的 div 元素的背景色为 #FF1493" id="b8" />
<h1>天气冷了</h1>
<div id="one">id为one</div>
<div id="two">
id为two
<div class="mini"> class是 mini</div>
</div>
<div class="one" title="aa">
class是 one
<div class="mini"> class是 mini</div>
<div class="mini"> class是 mini</div>
</div>
<div class="one">
class是 one
<div class="mini01"> class是 mini01</div>
<div class="mini"> class是 mini</div>
</div>
<br>
<div id="mover">动画</div>
<br>
</body>
</html>
<!DOCTYPE HTML>
<html>
<head>
<title>内容选择器</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<style type="text/css">
div,span {
width: 140px;
height: 140px;
margin: 20px;
background: #9999CC;
border: #000 1px solid;
float: left;
font-size: 17px;
font-family: Roman;
}
div.mini {
font-size: 14px;
height: 53px;
width: 47px;
background: #CC66FF;
border: #000 1px solid;
font-family: Roman;
}
input{ margin: 5px 5px; }
</style>
<!--引入jquery的js库-->
<script src="js/jquery-3.1.1.min.js"></script>
<script type="text/javascript">
$(function() {
/* ---------内容选择器--------- */
//改变含有文本 ‘id’ 的 div 元素的背景色为 #FF6347" id="b1"
$("#b1").click(function(){
$("div:contains('id')").css("background-color","#FF6347");
});
//改变空元素(既不包含文本也不包含子元素)的背景色为 #9ACD32" id="b2"
$("#b2").click(function(){
$("div:empty").css("background-color","#9ACD32");
});
//改变包含div子元素的div元素的背景色为 #FF0033" id="b3"
$("#b3").click(function(){
$("div:has(div)").css("background-color","#FF0033");
});
//改变非空div元素的背景色为 #006400" id="b4"
$("#b4").click(function(){
$("div:parent").css("background-color","#006400");
});
//====================================================
/* ---------可见选择器练习--------- */
//改变所有可见 div 元素背景色为 #F08080" id="b6"
$("#b6").click(function(){
$("div:visible").css("background-color","#F08080");
});
//让所有隐藏元素显示, 并改变背景色为 #FF69B4" id="b5" show()函数显示
$("#b5").click(function(){
$("div:hidden").show().css("background-color","#FF69B4");
});
})
</script>
</head>
<body>
<input type="button" value=" 改变含有文本 ‘id’ 的 div 元素的背景色为 #FF6347" id="b1" />
<input type="button" value=" 改变空元素(既不包含文本也不包含子元素)的背景色为 #9ACD32" id="b2" />
<input type="button" value=" 改变包含div子元素的div元素的背景色为 #FF0033" id="b3" />
<input type="button" value=" 改变非空div元素的背景色为 #006400" id="b4" />
<hr/>
<hr/>
<input type="button" value=" 改变所有可见 div 元素背景色为 #F08080" id="b6" />
<input type="button" value=" 让所有隐藏元素显示, 并改变背景色为 #FF69B4" id="b5" />
<h1>天气冷了</h1>
<div id="one">id为one</div>
<div id="two">
id为two
<div class="mini"> class是 mini</div>
</div>
<div class="one" title="aa">
class是 one
<div class="mini"></div>
<div class="mini"> class是 mini</div>
</div>
<br>
<div id="mover"></div>
<br>
<div style="display:none">看不见我...,看不见我....</div>
</body>
</html>
<!DOCTYPE HTML>
<html>
<head>
<title>基本过滤选择器</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<style type="text/css">
div,span {
width: 140px;
height: 140px;
margin: 20px;
background: #9999CC;
border: #000 1px solid;
float: left;
font-size: 17px;
font-family: Roman;
}
div.mini {
font-size: 14px;
height: 53px;
width: 47px;
background: #CC66FF;
border: #000 1px solid;
font-family: Roman;
}
input{ margin: 5px 5px; }
</style>
<!--引入jquery的js库-->
<script src="js/jquery-3.1.1.min.js"></script>
<script type="text/javascript">
$(function() {
/* ---------属性选择器练习--------- */
//改变包含id属性的 div 元素的背景色为 #FF6347" id="b1"
$("#b1").click(function(){
$("div[id]").css("background-color","#FF6347");
});
//改变包含属性title='aa' 的div 元素的背景色为 #9ACD32" id="b2"
$("#b2").click(function(){
$("div[title='aa']").css("background-color","#9ACD32");
});
//改变type属性不等于button的input 元素的背景色为 #FF0033" id="b3"
$("#b3").click(function(){
$("div[type!='button']").css("background-color","#FF0033");
});
//=================================================
/* ---------子元素选择器练习 nth-child first-child--------- */
//改变div 第二个子元素的背景色为 #006400" id="b4"
$("#b4").click(function(){
$("div:nth-child(2)").css("background-color"," #006400");
});
//改变div 第一个子元素的背景色为 #FF69B4" id="b5"
$("#b5").click(function(){
$("div:first-child").css("background-color","#FF69B4");
});
})
</script>
</head>
<body>
<input type="button" value=" 改变包含id属性的 div 元素的背景色为 #FF6347" id="b1" />
<input type="button" value=" 改变包含属性title='aa' 的div 元素的背景色为 #9ACD32" id="b2" />
<input type="button" value=" 改变type属性不等于button的input 元素的背景色为 #FF0033" id="b3" />
<hr/>
<hr/>
<input type="button" value=" 改变div 第二个子元素的背景色为 #006400" id="b4" />
<input type="button" value=" 改变div 第一个子元素的背景色为 #FF69B4" id="b5" />
<h1>天气冷了</h1>
<div id="one">id为one</div>
<div id="two">
id为two
<div class="mini"> class是 mini</div>
</div>
<div class="one" title="aa">
class是 one title为aa
<div class="mini"> class是 mini</div>
<div class="mini"> class是 mini</div>
</div>
<div class="one" title="bb">
class是 one title为bb
<div class="mini01"> class是 mini01</div>
<div class="mini"> class是 mini</div>
</div>
<br>
<div id="mover">id为mover 动画</div>
<br>
<input type="submit"/>
</body>
</html>
<!DOCTYPE HTML>
<html>
<head>
<title>表单选择器</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<style type="text/css">
div,span {
width: 140px;
height: 140px;
margin: 20px;
background: #9999CC;
border: #000 1px solid;
float: left;
font-size: 17px;
font-family: Roman;
}
div.mini {
font-size: 14px;
height: 53px;
width: 47px;
background: #CC66FF;
border: #000 1px solid;
font-family: Roman;
}
input{ margin: 5px 5px; }
</style>
<!--引入jquery的js库-->
<script src="js/jquery-3.1.1.min.js"></script>
<script type="text/javascript">
$(function() {
/* ---------表单选择器练习--------- */
//改变所有:input 元素的背景色为 #F08080" id="b1"
$("#b1").click(function(){
$(":input").css("background-color","#F08080");
});
//改变:password 元素的背景色为 #9ACD32" id="b2"
$("#b2").click(function(){
$(":password").css("background-color","#9ACD32");
});
//打印 :radio 元素的个数" id="b3"
$("#b3").click(function(){
alert($(":radio").length);
});
//打印所有 :checked 元素的value值" id="b4"
$("#b4").click(function(){
$(":checked").each(function(index,item){
//alert($(item).val());
alert(item.value);
});
});
//打印所有 :selected 元素的value值" id="b5"
$("#b5").click(function(){
$(":selected").each(function(index,item){
alert($(item).val());
//alert(item.value);
});
});
})
</script>
</head>
<body>
<input type="button" value=" 改变所有input 元素的背景色为 #F08080" id="b1" />
<input type="button" value=" 改变:password 元素的背景色为 #9ACD32" id="b2" />
<input type="button" value=" 打印 :radio 元素的个数" id="b3" />
<input type="button" value=" 打印所有 :checked 元素的value值" id="b4" />
<input type="button" value=" 打印所有 :selected 元素的value值" id="b5" />
<h1>天气冷了</h1>
用户名:<input type="text" disabled="disabled" name="username" value="被禁用了"/>
密码:<input type="password" name="password" value="123"/>
性别:<input type="radio" name="gender" value="man"/> 男
<input type="radio" name="gender" value="woman" checked="checked" />女
<br>
<br>
爱好:
<input type="checkbox" name="like" value="lanqiu" checked="checked" /> 篮球
<input type="checkbox" name="like" value="taiqiu"/> 台球
<input type="checkbox" name="like" value="zuqiu"/> 足球
出生地:
<select name="city">
<option value="beijing">北京</option>
<option value="shanghai" selected="selected">上海</option>
<option value="guangzhou">广州</option>
</select>
简介:
<textarea name="discription" rows="2" cols="10">请求输入个人描述...</textarea>
</body>
</html>
表单验证
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
.msg-default{
background-color:#555555;
color:#ffffff;
}
.msg-success{
background-color:#00ff00;
color:#ffffff;
}
.msg-error{
background-color:#ff0000;
color:#ffffff;
}
</style>
<script type="text/javascript" src="js/jquery-3.1.1.min.js"></script>
<script type="text/javascript">
$(function(){
function fun(node,style,msg){
$(node).next().removeClass().addClass(style);
$(node).next().text(msg);
}
//5个框获取焦点的提示信息
$("#name").focus(function(){
fun(this,"msg-default","用户名长度在6~9位之间");
});
$("#pw").focus(function(){
fun(this,"msg-default","密码长度在6~12位之间");
});
$("#pwconfirm").focus(function(){
fun(this,"msg-default","密码长度在6~12位之间");
});
$("#email").focus(function(){
fun(this,"msg-default","请输入合法的邮箱");
});
$("#phone").focus(function(){
fun(this,"msg-default","请输入合法的手机号");
});
//5个框的格式验证
$("#name").blur(function(){
if($(this).val()==""){
fun(this,"msg-error","用户名不能为空");
}else if($(this).val().length<6){
fun(this,"msg-error","用户名长度不能少于6位");
}else{
fun(this,"msg-success","用户名格式正确");
}
});
$("#pw").blur(function(){
if($(this).val()==""){
fun(this,"msg-error","密码不能为空");
}else if($(this).val().length<6){
fun(this,"msg-error","密码长度不能少于6位");
}else{
fun(this,"msg-success","密码格式正确");
}
});
$("#pwconfirm").blur(function(){
if($(this).val()==""){
fun(this,"msg-error","确认密码不能为空");
}else if($(this).val().length<6){
fun(this,"msg-error","确认密码长度不能少于6位");
}else if($("#pw").val()!=$(this).val()){
fun(this,"msg-error","确认密码和密码不一致");
}else{
fun(this,"msg-success","确认密码格式正确");
}
});
$("#email").blur(function(){
var regExp=/^([0-9a-zA-Z]{8,12})@([0-9a-zA-Z]{2,4}).com$/
if($(this).val()==""){
fun(this,"msg-error","邮箱不能为空");
}else if(!regExp.test($(this).val())){
fun(this,"msg-error","邮箱格式不正确");
}else{
fun(this,"msg-success","邮箱格式正确");
}
});
$("#phone").blur(function(){
var regExp=/^1(3|5|8)[0-9]{6,8}$/
if($(this).val()==""){
fun(this,"msg-error","手机号不能为空");
}else if(!regExp.test($(this).val())){
fun(this,"msg-error","手机号格式不正确");
}else{
fun(this,"msg-success","手机号格式正确");
}
});
//按钮的提交点击事件
$("#btn").click(function(){
//获取span节点,判断节点上是否包含msg-success样式名称
var count=0;
$("form>div").find("span").each(function(index,item){
if($(this).hasClass("msg-success")){
count++;
}
});
if(count==5){
//提交
alert("已提交");
}else{
return false;
}
});
});
</script>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form>
<div>
姓名:<input type="text" name="name" id="name" placeholder="请输入用户名">
<span></span>
</div>
<div>
密码:<input type="password" name="pw" id="pw" placeholder="请输入密码">
<span></span>
</div>
<div>
确认密码:<input type="password" name="pwconfirm" id="pwconfirm" placeholder="请输入密码">
<span></span>
</div>
<div>
邮箱:<input type="text" name="email" id="email" placeholder="请输入邮箱">
<span></span>
</div>
<div>
电话:<input type="text" name="phone" id="phone" placeholder="请输入电话">
<span></span>
</div>
<div>
<input id="btn" type="submit" value="注册">
</div>
</form>
</body>
</html>