一略贮、Jquery介紹及簡單使用
(一) 介紹
Jquery是什么甚疟,其實就是別人封裝好的方法,它把各個功能都考慮到啦逃延,方法比較全還并且簡潔方便览妖。我們直接拿來用就可以啦。
JQ里面的源代碼設(shè)計思路是很巧妙的揽祥。代碼之美~~
相關(guān)鏈接:
Jquery百度百科
Jquery作者
JQ已經(jīng)更新了好幾個版本讽膏,現(xiàn)在(2018年)最新的好像是3.1,我在這里就用1.1盔然,來證明我是個光棍桅打,JQ2.0之后不再支持IE678啦,自己根據(jù)需要來決定使用哪版愈案,也不全是說越新越好挺尾。
相關(guān)鏈接:
Jquery中文網(wǎng)
(二)使用
- 先把1.1版引入網(wǎng)頁內(nèi)
(三)入口函數(shù)
JS原生入口函數(shù):window.onload=function(){
????// ????代碼區(qū)
}://文檔和圖片加載完畢后會執(zhí)行里面的代碼。
缺點:一個網(wǎng)頁內(nèi)只能出現(xiàn)一次站绪,如果出現(xiàn)再次后者會覆蓋前者遭铺。
- JQ入口函數(shù)有3個:
- $(function () {
alert(1);
});//文檔加載完畢,圖片不加載的時候就可以執(zhí)行這個函數(shù)恢准。
- $(document).ready(function () {
alert(2);
});//文檔加載完畢魂挂,圖片不加載的時候就可以執(zhí)行這個函數(shù)。
- $(window).ready(function () {
alert(1);
});//文檔加載完畢馁筐,圖片也加載完畢的時候在執(zhí)行這個函數(shù)涂召。
優(yōu)點:可以出現(xiàn)多次。也可以根據(jù)不同的需要選擇入口函數(shù)敏沉。
(四)JQuery的選擇器 $
選擇ID的時候:$("#ID名")果正;
選擇Class的時候:$(".Class名")炎码;
選擇標(biāo)簽的時候:$("標(biāo)簽名");
將$美元符換成JQuery也是可以的秋泳。 比如:$("#ID")和JQuery("#ID")是一樣的潦闲。
可以打印試一下:console.log($===JQuery)//返回true;
(五)JQuery元素與原生JS之間相互轉(zhuǎn)換
<html>
<head>
<title></title>
</head>
<script src="jquery-1.11.1.js"></script>
<script>
jQuery(window).ready(function () {
console.log(document.getElementsByTagName("div")[0]);//打印原生JS的元素
console.log($("div"));//打印原生JQ的元素
})
</script>
<body>
<div style="width:100px;height:100px;background: pink"></div>
</body>
</html>
結(jié)果圖:
結(jié)論:
可以看出來,JS打印的是整個標(biāo)簽迫皱。而JQ打印的是一個數(shù)組歉闰。我們可以以此來確定這個元素地JS的還是JQ的。
實際工作中我們需要經(jīng)常在JS和JQ之間轉(zhuǎn)換的卓起。來看看怎么轉(zhuǎn)吧和敬!
- 原生JS轉(zhuǎn)換JQ
var div=document.getElementsByTagName("div")[0];
div=$(div);//將JQ元素賦值給原生JS
console.log(div);
- JQ轉(zhuǎn)換JS
二、案例
(一) 隔行變色
效果:
源碼:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<script src="jquery-1.11.1.js"></script>
<script>
jQuery(function(){
var li=$("li");
for(var i=0;i<li.length;i++){
if(i%2===0){
li[i].style.background="#488569"
}else{
li.get(i).style.background="#f0756f"
}
}
})
</script>
</head>
<body>
<ul>
<li>JS很好玩嘛~~~~~</li>
<li>JS很好玩嘛~~~~~</li>
<li>JS很好玩嘛~~~~~</li>
<li>JS很好玩嘛~~~~~</li>
<li>JS很好玩嘛~~~~~</li>
<li>JS很好玩嘛~~~~~</li>
<li>JS很好玩嘛~~~~~</li>
</ul>
</body>
</html>
(二) 開關(guān)燈
效果:要求是要使用JQ和JS相互轉(zhuǎn)換完成此次效果戏阅。
源碼:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>開關(guān)燈案例</title>
<script src="jquery-1.11.1.min.js"></script>
<script>
$(document).ready(function(){
$($("input")[0]).click(function(){
$("body")[0].style.backgroundColor="#fff";
})
$($("input")[1]).click(function(){
$("body").get(0).style.backgroundColor="#000";
})
})
</script>
</head>
<body>
<input type="button" value="開燈" id="j_openLight"/>
<input type="button" value="關(guān)燈" id="j_closeLight"/>
</body>
</html>
三概龄、選擇器
選擇器 | 作用 |
---|---|
$() | 基本選擇器 |
$("ul>li") | 子代選擇器 |
$("ul li") | 后代選擇器 |
$("ul li:odd") | 選擇此元素的奇數(shù)元素 |
$("ul li:even") | 選擇此元素的偶數(shù)元素 |
$("ul li:eq(0)") | 指定索引值的元素 |
$("ul").children("li")方法 | 后代選擇器,不寫參數(shù)則是所有后代選擇器 |
$("ul").find("li")方法 | 后代選擇器饲握,必須寫參數(shù) |
$("ul li").eq(0)方法 | 索引方法 |
$("ul li").eq(0).next()方法 | 該元素的下一個兄弟元素 |
$("ul li").eq(0).siblings()方法 | 該元素的所有兄弟元素 |
$("ul li").eq(0).parent()方法 | 該元素的父元素 |
-
選擇器案例 下拉菜單
用JQ超簡單
$(".wrap>ul>li").mouseover(function () {
$(this).children().show()
})
$(".wrap>ul>li").mouseout(function () {
$(this).find("ul").hide()
})
源碼:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style type="text/css">
* {
margin: 0;
padding: 0;
}
ul {
list-style: none;
}
.wrap {
width: 330px;
height: 30px;
margin: 100px auto 0;
padding-left: 10px;
background-image: url(imgs/bg.jpg);
}
.wrap li{
background-image: url(imgs/libg.jpg);
}
.wrap > ul > li {
float: left;
margin-right: 10px;
position: relative;
}
.wrap a {
display: block;
height: 30px;
width: 100px;
text-decoration: none;
color: #000;
line-height: 30px;
text-align: center;
}
.wrap li ul {
position: absolute;
top: 30px;
display: none;
}
</style>
<script src="jquery-1.11.1.min.js"></script>
<script>
//入口函數(shù)
$(document).ready(function () {
$(".wrap>ul>li").mouseover(function () {
$(this).children().show()
})
$(".wrap>ul>li").mouseout(function () {
$(this).find("ul").hide()
})
});
</script>
</head>
<body>
<div class="wrap">
<ul>
<li>
<a href="">一級菜單1</a>
<ul>
<li><a href="javascript:void(0);">二級菜單1</a></li>
<li><a href="javascript:void(0);">二級菜單2</a></li>
<li><a href="javascript:void(0);">二級菜單3</a></li>
</ul>
</li>
<li>
<a href="javascript:void(0);">一級菜單1</a>
<ul>
<li><a href="javascript:void(0);">二級菜單1</a></li>
<li><a href="javascript:void(0);">二級菜單2</a></li>
<li><a href="javascript:void(0);">二級菜單3</a></li>
</ul>
</li>
<li>
<a href="javascript:void(0);">一級菜單1</a>
<ul>
<li><a href="javascript:void(0);">二級菜單1</a></li>
<li><a href="javascript:void(0);">二級菜單2</a></li>
<li><a href="javascript:void(0);">二級菜單3</a></li>
</ul>
</li>
</ul>
</div>
</body>
</html>
-
選擇器案例 隔行變色
只上代碼,考驗?zāi)阕x代碼的時候到啦蚕键。
<script>
$(function () {
$("li:even").css("background","pink");
$("li:odd").css("background","red");
var color=""
$("li").mouseover(function () {
color=$(this).css("background");
$(this).css("background","yellow");
})
$("li").mouseout(function () {
$(this).css("background", color);
})
});
</script>
-
選擇器案例
源碼:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style type="text/css">
* {
margin: 0;
padding: 0;
}
ul {
list-style: none;
}
body {
background: #000;
}
.wrap {
margin: 100px auto 0;
width: 630px;
height: 394px;
padding: 10px 0 0 10px;
background: #000;
overflow: hidden;
border: 1px solid #fff;
}
.wrap li {
float: left;
margin: 0 10px 10px 0;
}
.wrap img {
display: block;
border: 0;
}
</style>
<script src="../jquery-1.11.1.js"></script>
<script>
jQuery(window).ready(function () {
//需求:鼠標(biāo)放入li中救欧,其他的li半透明,當(dāng)前盒子锣光,opacity值為1笆怠;離開wrap的時候所有的li全部opacity值為1;
$(".wrap").find("li").mouseenter(function () {
//連式編程
$(this).css("opacity",1).siblings("li").css("opacity",0.4);
});
//離開wrap的時候所有的li全部opacity值為1誊爹;
$(".wrap").mouseleave(function () {
$(this).children().children("li").css("opacity",1);
// $(".wrap li").css("opacity",1);
});
});
</script>
</head>
<body>
<div class="wrap">
<ul>
<li><a href="#"><img src="images/01.jpg" alt=""/></a></li>
<li><a href="#"><img src="images/02.jpg" alt=""/></a></li>
<li><a href="#"><img src="images/03.jpg" alt=""/></a></li>
<li><a href="#"><img src="images/04.jpg" alt=""/></a></li>
<li><a href="#"><img src="images/05.jpg" alt=""/></a></li>
<li><a href="#"><img src="images/06.jpg" alt=""/></a></li>
</ul>
</div>
</body>
</html>
-
選擇器案例 選項盒子
源碼:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style type="text/css">
* {padding: 0;margin: 0;}
ul { list-style-type: none;}
.parentWrap {
width: 200px;
text-align:center;
}
.menuGroup {
border:1px solid #999;
background-color:#e0ecff;
}
.groupTitle {
display:block;
height:20px;
line-height:20px;
font-size: 16px;
border-bottom:1px solid #ccc;
cursor:pointer;
}
.menuGroup > div {
height: 200px;
background-color:#fff;
display:none;
}
</style>
<script src="jquery-1.11.1.min.js"></script>
<script>
$(function () {
//需求:鼠標(biāo)點擊span蹬刷,讓他下面的div顯示出來。讓其他的div隱藏频丘。
$(".parentWrap span").click(function () {
// $(this).next().show();
// //讓其他的隱藏
// //點擊的span的父親li办成,的所有的兄弟元素li,的孩子元素div全部隱藏搂漠。
// $(this).parent("li").siblings("li").children("div").hide();
//連式編程
$(this).next().show().parent("li").siblings("li").find("div").hide();
});
})
</script>
</head>
<body>
<ul class="parentWrap">
<li class="menuGroup">
<span class="groupTitle">標(biāo)題1</span>
<div>我是彈出來的div1</div>
</li>
<li class="menuGroup">
<span class="groupTitle">標(biāo)題2</span>
<div>我是彈出來的div2</div>
</li>
<li class="menuGroup">
<span class="groupTitle">標(biāo)題3</span>
<div>我是彈出來的div3</div>
</li>
<li class="menuGroup">
<span class="groupTitle">標(biāo)題4</span>
<div>我是彈出來的div4</div>
</li>
</ul>
</body>
</html>
-
選擇器案例 淘寶廣告欄
源碼:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style type="text/css">
* {
margin: 0;
padding: 0;
font-size: 12px;
}
ul {
list-style: none;
}
a {
text-decoration: none;
}
.wrapper {
width: 298px;
height: 248px;
margin: 100px auto 0;
border: 1px solid pink;
overflow: hidden;
}
#left, #center, #right {
float: left;
}
#left li, #right li {
background: url(images/lili.jpg) repeat-x;
}
#left li a, #right li a {
display: block;
width: 48px;
height: 27px;
border-bottom: 1px solid pink;
line-height: 27px;
text-align: center;
color: black;
}
#left li a:hover, #right li a:hover {
background-image: url(images/abg.gif);
}
#center {
border-left: 1px solid pink;
border-right: 1px solid pink;
}
</style>
<script src="jquery-1.11.1.min.js"></script>
<script>
jQuery(function () {
//需求:鼠標(biāo)放入兩側(cè)的li中迂卢,讓中間的ul中對應(yīng)索引值的li顯示出來,其他的隱藏桐汤。(右側(cè)的li要+9)
//左側(cè)先綁而克。獲取綁mouseenter
$("#left li").mouseenter(function () {
//顯示對應(yīng)索引值的中間的li
//alert($(this).index()); 獲取索引值
$("#center li").eq($(this).index()).show().siblings("li").hide();
});
//右側(cè)
$("#right li").mouseenter(function () {
//顯示對應(yīng)索引值的中間的li
//alert($(this).index()); 獲取索引值
$("#center li:eq("+($(this).index()+9)+")").show().siblings("li").hide();
});
});
</script>
</head>
<body>
<div class="wrapper">
<ul id="left">
<li><a href="#">女靴</a></li>
<li><a href="#">雪地靴</a></li>
<li><a href="#">冬裙</a></li>
<li><a href="#">呢大衣</a></li>
<li><a href="#">毛衣</a></li>
<li><a href="#">棉服</a></li>
<li><a href="#">女褲</a></li>
<li><a href="#">羽絨服</a></li>
<li><a href="#">牛仔褲</a></li>
</ul>
<ul id="center">
<li><a href="#"><img src="images/女靴.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/雪地靴.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/冬裙.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/呢大衣.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/毛衣.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/棉服.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/女褲.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/羽絨服.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/牛仔褲.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/女包.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/男包.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/登山鞋.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/皮帶.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/圍巾.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/皮衣.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/男毛衣.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/男棉服.jpg" width="200" height="250"/></a></li>
<li><a href="#"><img src="images/男靴.jpg" width="200" height="250"/></a></li>
</ul>
<ul id="right">
<li><a href="#">女包</a></li>
<li><a href="#">男包</a></li>
<li><a href="#">登山鞋</a></li>
<li><a href="#">皮帶</a></li>
<li><a href="#">圍巾</a></li>
<li><a href="#">皮衣</a></li>
<li><a href="#">男毛衣</a></li>
<li><a href="#">男棉服</a></li>
<li><a href="#">男靴</a></li>
</ul>
</div>
</body>
</html>