jQuery介绍
jquery是一个函数库,一个js文件,页面用script标签引入这个js文件就可以使用。
下载地址:
jQuery官方网站: http://jquery.com/
<script type="text/javascript" src="js/jquery-1.12.2.js"></script>
将获取元素的语句写到页面头部,会因为元素还没有加载而出错,jquery提供了ready方法解决这个
问题,它的速度比原生的 window.onload 更快。
<script type="text/javascript">
$(document).ready(function(){
......
});
</script>
详细写法
<script type="text/javascript">
$(function(){
......
});
</script>
简写
将获取元素的语句写到页面头部,会因为元素还没有加载而出错,jquery提供了ready方法解决这个
问题,它的速度比原生的 window.onload 更快
<script type="text/javascript">
$(document).ready(function(){
......
});
</script>
jQuery选择器
基本选择器
选择某个网页元素,然后对它进行某种操作, jquery选择器 jquery选择器可以快速地选择元素,
选择规则和css样式相同,使用length属性判断是否选择成功。
jquery用法思想一 : 选择某个网页元素,然后对它进行某种操作
$(document) //选择整个文档对象
$('li') //选择所有的li元素
$('#myId') //选择id为myId的网页元素
$('.myClass') // 选择class为myClass的元素
$('input[name=first]') // 选择name属性等于first的input元素
$('#ul1 li span')
//选择id为为ul1元素下的所有li下的span元素
$('#ul1 li:first')
$('#ul1 li:odd')
选择器修饰过滤
//选择id为ul1元素下的第一个li
//选择id为ul1元素下的li的奇数行
$('#ul1 li:eq(2)') //选择id为ul1元素下的第3个li
$('#ul1 li:gt(2)') // 选择id为ul1元素下的前三个之后的li
$('#myForm :input') // 选择表单中的input元素
$('div:visible') //选择可见的div元素
选择器函数过滤
$('div').has('p'); // 选择包含p元素的div元素
$('div').not('.myClass'); //选择class不等于myClass的div元素
$('div').filter('.myClass'); //选择class等于myClass的div元素
$('div').first(); //选择第1个div元素
$('div').eq(5); //选择第6个div元素
选择器转移
$('div').prev('p'); //选择div元素前面的第一个p元素
$('div').next('p'); //选择div元素后面的第一个p元素
$('div').closest('form'); //选择离div最近的那个form父元素
$('div').parent(); //选择div的父元素
$('div').children(); //选择div的所有子元素
$('div').siblings(); //选择div的同级元素
$('div').find('.myClass'); //选择div内的class等于myClass的元素
操作行间样式
jquery用法思想二 同一个函数完成取值和赋值
// 获取div的样式
$("div").css("width");
$("div").css("color");
//设置div的样式
$("div").css("width","30px");
$("div").css("height","30px");
$("div").css({fontSize:"30px",color:"red"});
操作样式类名
jquery用法思想二 同一个函数完成取值和赋值
$("#div1").addClass("divClass2")
//为id为div1的对象追加样式divClass2
$("#div1").removeClass("divClass")
//移除id为div1的对象的class名为divClass的样式
$("#div1").removeClass("divClass divClass2")
//移除多个样式
$("#div1").toggleClass("anotherClass")
//重复切换anotherClass样式
jQuery属性操作
设置html内容
// 取出文本内容
// 取出html内容
var $htm = $('#div1').text();
var $htm = $('#div1').html();
// 设置文本内容
// 设置html内容
$('#div1').html('<span>添加文字</span>');
$('#div1').text('<span>添加文字</span>');
设置属性值
// 取出图片的地址
var $src = $('#img1').attr('src');
// 设置图片的地址和alt属性
$('#img1').attr({ src: "test.jpg", alt: "Test Image" });
绑定click事件
$('#btn1').click(function(){
// 内部的this指的是原生对象
// 使用jquery对象用 $(this)
})
jquery特殊效果
fadeOut() 淡出
fadeToggle() 切换淡入淡出
hide() 隐藏元素
show() 显示元素
toggle() 依次展示或隐藏某个元素
slideDown() 向下展开
slideUp() 向上卷起
slideToggle() 依次展开或卷起某个元素
jquery特殊效果
$btn.click(function(){
$('#div1').fadeIn(1000,'swing',function(){
alert('done!');
});
});
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script type="text/javascript" src="js/jquery-3.4.1.min.js"></script>
</head>
<body>
</body>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style type="text/css">
* {
margin: 0;
padding: 0;
}
.box {
width: 300px;
height: 450px;
border: 1px solid gray;
margin: 0 auto;
margin-top: 50px;
}
.box h2 {
color: green;
font-size: 20px;
line-height: 35px;
font-weight: bold;
border: 1px dashed gray;
padding-left: 10px;
}
.box li {
list-style: none;
padding: 10px 15px;
border: 1px dashed gray;
}
.box li span {
background-color: gray;
display: inline-block;
width: 20px;
height: 20px;
color: white;
text-align: center;
}
.box li:nth-child(-n+3) span {
background-color: green;
color: white;
}
.content {
overflow: hidden;
margin-top: 5px;
display: none;
}
.content img {
width: 80px;
height: 120px;
float: left;
}
.content p {
width: 180px;
height: 120px;
float: right;
font-size: 12px;
}
.current .content{
display: block;
}
</style>
<script type="text/javascript" src="js/jquery-3.4.1.min.js"></script>
<script>
$(function () {
$('li').mouseenter(function () {
$(this).addClass('current');
});
$('li').mouseleave(function () {
$(this).removeClass('current');
});
})
</script>
</head>
<body>
<div class="box">
<h2>电影排行榜</h2>
<ul>
<li>
<span>1</span> 哪吒之魔童降世
<div class="content ">
<img src="img/movie.jpg">
<p>
天地灵气孕育出一颗能量巨大的混元珠,元始天尊将混元珠提炼成灵珠和魔丸, 灵珠投胎为人,助周伐纣时可堪大用;而魔丸则会诞出魔王,为祸人间。 元始天尊启动了天劫咒
</p>
</div>
</li>
<li>
<span>2</span> 哪吒之魔童降世
<div class="content ">
<img src="img/movie.jpg">
<p>
天地灵气孕育出一颗能量巨大的混元珠,元始天尊将混元珠提炼成灵珠和魔丸, 灵珠投胎为人,助周伐纣时可堪大用;而魔丸则会诞出魔王,为祸人间。 元始天尊启动了天劫咒
</p>
</div>
</li>
<li>
<span>3</span> 哪吒之魔童降世
<div class="content">
<img src="img/movie.jpg">
<p>
天地灵气孕育出一颗能量巨大的混元珠,元始天尊将混元珠提炼成灵珠和魔丸, 灵珠投胎为人,助周伐纣时可堪大用;而魔丸则会诞出魔王,为祸人间。 元始天尊启动了天劫咒
</p>
</div>
</li>
<li>
<span>4</span> 哪吒之魔童降世
<div class="content">
<img src="img/movie.jpg">
<p>
天地灵气孕育出一颗能量巨大的混元珠,元始天尊将混元珠提炼成灵珠和魔丸, 灵珠投胎为人,助周伐纣时可堪大用;而魔丸则会诞出魔王,为祸人间。 元始天尊启动了天劫咒
</p>
</div>
</li>
<li>
<span>5</span> 哪吒之魔童降世
<div class="content">
<img src="img/movie.jpg">
<p>
天地灵气孕育出一颗能量巨大的混元珠,元始天尊将混元珠提炼成灵珠和魔丸, 灵珠投胎为人,助周伐纣时可堪大用;而魔丸则会诞出魔王,为祸人间。 元始天尊启动了天劫咒
</p>
</div>
</li>
</ul>
</div>
</body>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
* {
margin: 0;
padding: 0;
}
.box {
width: 448px;
height: 298px;
border: 1px solid lightgray;
margin: 50px auto;
}
.nav > li {
list-style: none;
width: 110px;
height: 50px;
background: darkseagreen;
color: white;
text-align: center;
line-height: 50px;
float: left;
border: 1px solid white;
}
.nav > li:hover {
background-color: green;
}
.nav > .current {
background-color: green;
}
.content > li {
list-style: none;
display: none;
}
.content > .show {
display: block;
}
.content > li > img {
width: 448px;
height: 248px;
}
</style>
<script src="js/jquery-3.4.1.min.js"></script>
<script> $(function () {
$(".nav>li").mouseenter(function () {
$(this).addClass("current");
$(this).siblings().removeClass("current");
var $idx = $(this).index();
var $li = $(".content>li").eq($idx);
$li.siblings().removeClass("show");
$li.addClass("show");
})
}) </script>
</head>
<body>
<div class="box">
<ul class="nav">
<li class="current">主页</li>
<li>遇见好货</li>
<li>年中狂欢</li>
<li>夏日尚新</li>
</ul>
<ul class="content">
<li class="show"><img src="./img/img5.jpg" alt=""></li>
<li><img src="./img/img1.jpg" alt=""></li>
<li><img src="./img/img2.jpg" alt=""></li>
<li><img src="./img/img3.jpg" alt=""></li>
</ul>
</div>
</body>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。