前端框架(库)
#初识jQuery
jQuery由美国人John Resig于2006年创建
jQuery是目前最流行的JavaScript程序库,它是对JavaScript对象和函数的封装
它的设计思想是write less,do more
课件
1jQuery能做什么
访问和操作DOM元素
控制页面样式
对页面事件进行处理
扩展新的jQuery插件
与Ajax技术完美结合
jQuery能做的JavaScript也都能做,但使用jQuery能大幅提高开发效率
2jQuery的优势
体积小,压缩后只有100KB左右
强大的选择器
出色的DOM封装
可靠的事件处理机制
出色的浏览器兼容性
使用隐式迭代简化编程
丰富的插件支持
3获取jQuery
4jQuery库文件
5jQuery基本语法
6$(document).ready()
7jQuery语法结构
8jQuery操作页面元素
addClass( )方法
使用addClass( )方法为元素添加样式
css( )方法
使用css( )方法设置元素样式
元素的显示和隐藏
使用show( )、hide( ) 方法设置元素的显示和隐藏
9jQuery代码风格
10链式操作
11隐式迭代
12添加注释
13!DOM模型
14DOM对象和jQuery对象
DOM对象转jQuery对象
jQuery对象转DOM对象
总结
代码
示例1:弹出窗口特效
$(document).ready(function() {});
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>弹出窗口特效</title>
</head>
<body>
<script src="js/jquery-1.12.4.js" type="text/javascript"></script>
<script>
$(document).ready(function() {
alert("我欲奔赴沙场征战jQuery,势必攻克之!");
});
</script>
</body>
</html>
示例2:导航菜单
$("li").click(function(){
$("#current").addClass("current");
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>左导航菜单</title>
<style type="text/css">
li{list-style: none; line-height: 22px; cursor: pointer;}
.current{background: #6cf; font-weight: bold; color: #fff;}
</style>
</head>
<body>
<ul>
<li id="current">jQuery简介</li>
<li>jQuery语法</li>
<li>jQuery选择器</li>
<li>jQuery事件与动画</li>
<li>jQuery方法</li>
</ul>
<script src="js/jquery-1.12.4.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$("li").click(function(){
$("#current").addClass("current");
});
});
</script>
</body>
</html>
示例3:仿京东左侧菜单mouseover/out
*{padding:0;margin:0;}
a{text-decoration:none;}
.nav-box{
width:210px;
margin:5px 0 0 5px;
}
.nav-top a{
display:block;
height:45px;
font-size:16px;
line-height:45px;
padding:0 10px;
background:#B1191A;
color:#fff;
}
ul{background:#c81623;list-style:none;padding-bottom:1px;}
ul li{
height:30px;
line-height:30px;
font-size:14px;
color:#fff;
position:relative;
padding-left: 5px;
}
ul li a{color:#fff;}
ul li div{display:none; position: absolute; left: 211px; top:0px;}
$(document).ready(function(){
/**一级内容悬浮**/
$("li").mouseover(function(){
$(this).css({"background":"orange"});//当前li 背景颜色为橙色
$(this).children("div").show();//让相应二级内容显示
}).mouseout(function(){
$(this).css({"background":"#c81623"});
$(this).children("div").hide();
});
});
<!doctype html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>仿京东左侧菜单</title>
<link href="css/style.css" rel="stylesheet"/>
</head>
<body>
<div class="nav-box">
<div class="nav-top"><a href="">全部商品分类</a></div>
<ul>
<li>
<a href="">家用电器</a><div><img src="images/erji.jpg"/></div>
</li>
<li>
<a href="">手机</a>、<a href="">数码</a>、<a href="">京东通信</a><div><img src="images/erji1.jpg"/></div>
</li>
<li>
<a href="">电脑</a>、<a href="">办公</a><div><img src="images/erji2.jpg"/></div>
</li>
<li>
<a href="">家居</a>、<a href="">家具</a>、<a href="">家装</a>、<a href="">厨具</a><div><img src="images/erji3.jpg"/></div>
</li>
<li>
<a href="">男装</a>、<a href="">女装</a>、<a href="">珠宝</a><div><img src="images/erji4.jpg"/></div>
</li>
</ul>
</div>
<script src="js/jquery-1.12.4.js"></script>
<script src="js/hover.js"></script>
</body>
</html>
示例4:问答特效
$("h2").css("background-color","#CCFFFF").next().css("display","block");
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>问答特效</title>
<style type="text/css">
h2{padding: 5px;}
p{display: none;}
</style>
</head>
<body>
<h2>什么是受益人?</h2>
<p>
<strong>解答:</strong>
受益人是指人身保险中由被保险人或者投保人指定的
享有保险金请求权的人,投保人、被保险人可以为受益人。
</p>
<script src="js/jquery-1.12.4.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$("h2").click(function(){
$("h2").css("background-color","#CCFFFF").next().css("display","block");
});
});
</script>
</body>
</html>
示例5:隐式迭代方法的应用
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>隐式迭代</title>
<style type="text/css">
li {line-height:22px;}
</style>
</head>
<body>
<ul>
<li>数码产品</li>
<li>家用电器</li>
<li>妇幼保健</li>
<li>时尚丽人</li>
</ul>
<script src="js/jquery-1.12.4.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$("li").css({"font-weight":"bold","color":"red"});
});
</script>
</body>
</html>