一:jQuery的引入方式和入口函數:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>入口函數</title>
<script src="js/jquery-2.1.1.min.js"></script>
<script>
//先将dou=cument轉換成jQuery ,然後調用ready方法,方法裡面是function函數。
$(document).ready(function(){
var $div = $('#div01');
alert('jquery擷取的div' + $div);
})
//最簡潔的寫法:
//符号裡面直接寫function函數。
$(function(){
var $div = $('#div01');
alert('jquery擷取的div' + $div);
})
</script>
</head>
<body>
<div id="div01">我是盒子一</div>
</body>
</html>
二:jQuery的選擇器:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>選擇器</title>
<script src="js/jquery-2.1.1.min.js"></script>
<script>
$(function(){
// 1:标簽選擇器,選擇所有的div标簽
$div = $("div");
console.log($div.length);
// 2:類選擇器
$oDiv = $(".div1");
console.log($oDiv.length);
// 3:id選擇器
$oDiv2 = $("#div2");
console.log($oDiv2.length);
// 4:層級選擇器
$Op = $(".div3 p");
console.log($Op.length);
// 5:屬性選擇器,特殊,都不用加雙引号。
$oText = $("input[name=first]");
console.log($oText.length);
});
</script>
</head>
<body>
<div>我是div盒子1</div>
<div class="div1">我是div盒子2</div>
<div id = "div2">我是div盒子3</div>
<div class="div3">我是<p>div</p>盒子4</div>
<div>我是div盒子5</div>
<input type="text" name="first">
<input type="rodio" name="secound">
<input type="text" name="thrid">
</body>
</html>
三:選擇集過濾:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>選擇集過濾</title>
<script src="js/jquery-2.1.1.min.js"></script>
<script>
$(function(){
var $div = $("div")
console.log($div.length)
//使用has選擇第一個标簽
var $div1 = $div.has("#mytext")
console.log($div1.length)
//使用eq選擇第二個标簽,注意下标一是第二個
var $div2 = $div.eq(1)
$div2.css({'background-color':'red'})
})
</script>
</head>
<body>
<div>
這是第一個div
<input type="text" id="mytext">
</div>
<div>
這是第二個div
<input type="text">
<input type="button">
</div>
</body>
</html>
四:選擇集轉移;
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>選擇集轉移</title>
<script src="js/jquery-2.1.1.min.js"></script>
<script>
$(function(){
//選出目标的div
var $div = $("#div01");
//選擇上一個元素
$div.prev().css({'color':'blue'});
//選擇下一個元素
$div.next().css({'color':'red'});
//選擇前面所有元素
$div.prevAll().css({'color':"green"});
//選擇後面所有元素
$div.nextAll().css({'color':'black'});
//選擇父類元素
// $div.parent().css({'background-color':'red'});
//選擇同級元素
$div.siblings().css({'color':'red'});
//選擇所有的孩子
$div.children().css({'color': 'blue'})
//選擇子類元素的某一個
$div.find('.sp02').css({'font-size':'50px'});
})
</script>
</head>
<body>
<h2>這是第一個h2标簽</h2>
<p >這是第一個段落</p>
<div id="div01">這是一個<span>div</span><span class="sp02">第二個span</span></div>
<h2>這是第二個h2标簽</h2>
<p>這是第二個段落</p>
</body>
</html>
五:擷取和設定元素内容:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>選擇集轉移</title>
<script src="js/jquery-2.1.1.min.js"></script>
<script>
$(function(){
//選出目标的div
var $div = $("#div01");
//選擇上一個元素
$div.prev().css({'color':'blue'});
//選擇下一個元素
$div.next().css({'color':'red'});
//選擇前面所有元素
$div.prevAll().css({'color':"green"});
//選擇後面所有元素
$div.nextAll().css({'color':'black'});
//選擇父類元素
// $div.parent().css({'background-color':'red'});
//選擇同級元素
$div.siblings().css({'color':'red'});
//選擇所有的孩子
$div.children().css({'color': 'blue'})
//選擇子類元素的某一個
$div.find('.sp02').css({'font-size':'50px'});
})
</script>
</head>
<body>
<h2>這是第一個h2标簽</h2>
<p >這是第一個段落</p>
<div id="div01">這是一個<span>div</span><span class="sp02">第二個span</span></div>
<h2>這是第二個h2标簽</h2>
<p>這是第二個段落</p>
</body>
</html>
六:擷取和設定元素屬性:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>擷取設定元素屬性</title>
<style>
#link01{
color:red;
font-size: 30px;
}
</style>
<script src="js/jquery-2.1.1.min.js"></script>
<script>
$(function(){
//1:擷取除css之外的屬性
$link = $("#link01");
console.log($link.prop("id"));
$input = $("#input01");
console.log($input.prop("type"));
console.log($input.prop("id"));
console.log($input.prop("value"));
//2:擷取value的特殊:
console.log($input.val());
//3:擷取css屬性
console.log($link.css("color"));
console.log($link.css("font-size"));
//4:設定标簽的屬性
$link.prop({"href": "http://www.baidu.com"});
//5:設定标簽的值
$link.val("連結");
console.log($link.prop("value"));
//6:修改标簽的元素
$link.val("這是個連結");
console.log($link.prop("value"));
})
</script>
</head>
<body>
<a id="link01">這是一個連結</a>
<input type="text" id="input01" value="111111">
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>jquery的事件</title>
<script src="js/jquery-2.1.1.min.js"></script>
<script>
$(function(){
//1:擷取所有标簽的對象
var $list = $(".list");
var $li = $(".list li");
var $text = $("#text1");
var $button = $("#button1");
//2:給li設定點選事件,點選後變成紅色,沒有被點選的設定成黑色。
//注意siblings是個函數,必須寫括号。
$li.click(function(){
$(this).css({"color":"red"});
$(this).siblings().css({"color":"black"});
});
//3:讓text擷取焦點時是藍色,失去焦點時是紅色。
$text.click(function(){
$(this).css({"background":"blue"});
});
$text.blur(function(){
$(this).css({"background":"red"});
});
//4:設定點選按鈕,滑鼠經過按鈕變成黃色,滑鼠離開變成白色
$button.mouseup(function(){
$(this).css({"color":"yellow"});
})
$button.mouseover(function(){
$(this).css({"color":"white"});
})
});
</script>
</head>
<body>
<ul class="list">
<li>清單文字</li>
<li>清單文字</li>
<li>清單文字</li>
</ul>
<input type="text" id="text1">
<input type="button" id="button1" value="點選">
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>擷取和設定元素屬性</title>
<style>
</style>
<script src="js/jquery-2.1.1.min.js"></script>
<script>
$(function(){
//1:擷取對象
var $a = $("#link01");
var $oInput = $("#input01");
//2:擷取屬性
console.log($a.prop("id"));
console.log($oInput.prop("type"));
console.log($oInput.prop("value"));
//3:擷取值的簡寫
console.log($oInput.val());
//4:重寫屬性/增加屬性
$a.prop({"href":"http://www.baidu.com","title":"這是去百度的網址"})
console.log($a.prop("href"));
$oInput.prop({"value":"2222222222"});
console.log($oInput.prop("value"))
});
</script>
</head>
<body>
<a id="link01">這是一個連結</a>
<input type="text" id="input01" value="111111">
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>事件代理</title>
<script src="js/jquery-2.1.1.min.js"></script>
<!-- 為啥要用事件代理技術?? -->
<!-- 事件代理技術:如果采用之前的選擇list下所有li标簽的形式,如果增加li的代碼在點選事件後面 -->
<!-- 那麼新加入的将不會改變樣式。 -->
<!-- 事件代理就是利用事件冒泡的原理(事件冒泡就是事件會向它的父級一級一級傳遞),
把事件加到父級上,通過判斷事件來源,執行相應的子元素的操作,事件代理首先可以極大減少事件綁定次數,
提高性能;其次可以讓新加入的子元素也可以擁有相同的操作。 -->
<script>
$(function(){
$list = $("#list");
$list.delegate("li","click",function(){
$(this).css({"color":"red"});
$(this).siblings().css({"color":"black"});
})
});
</script>
</head>
<body>
<ul id="list">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
</body>
</html>