JQuery基础-DAY1
jQuery介绍
是一个轻量级的js框架/库,其宗旨是write less do more。
jQuery对象
js的对象叫做dom对象
使用jQuery框架产生的对象是jQuery对象,是对dom对象的包装。jQuery下的对象方法和dom对象方法不能混用,只能各用个的。
约定:如果获取的是 jQuery 对象, 那么要在变量前面加上$
//基本语法
$(selector).action() //即选择器选择生成对象,对象调用方法
jQuery中文手册:http://jquery.cuishifeng.cn/
对象转换
var $variable = jQuery 对象
var variable = DOM 对象 $variable[0] jquery对象按索引取出来的是dom对象,如:
$("#msg").html()
$("#msg")[0].innerHTML
查找操作对象
选择器
查找要操作的标签,生成jquery对象
基本选择器
$("*")
$("#id")
$(".class")
$("element")
$(".class,p,div")
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <p id="p1">PPP</p>
<div class="c1">DIV</div>
<div class="c1">DIV</div>
<div class="c1">DIV</div>
<span class="d1">SPAN</span>
<span class="c2">SPAN</span>
<a href="">AAAA</a> <script src="jquery-3.2.1.js"></script> //导入jquery文件
<script>
// 基本选择器
$("#p1").css("color","red") //按照id选择
$(".d1").css({"color":"green","fontSize":"50px"}) //按照class选择
$("div").css({"color":"yellow","fontSize":"35px"}) //按照标签名div选择
//$("*").css({"color":"blue","fontSize":"30px"}) //body下的所有标签
$(".c2,a").css({"color":"gray","fontSize":"30px"}) //多个条件用空格隔开 </script>
</body>
</html>
基本选择器示例
注意,获取的jquery对象是一个集合,jquery对象在做方法调用进行属性操作的时候,会把集合里的所有元素都循环一次执行,想想js代码的循环,尼玛...
层级选择器
$(".outer div") //后代
$(".outer>div") //子代
$(".outer+div") //毗邻
$(".outer~div") //普通兄弟
同css组合选择器
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <p>p6</p>
<div class="outer">
<div class="inner">
<p>p3</p>
<div>DIV</div>
</div>
<p>p2</p>
</div>
<p>p1</p>
<p>p4</p> <script src="../2017.8.14/jquery-3.2.1.js"></script>
<script> $(".outer p").css("color","red") //后代
//$(".outer>p").css("color","red") //子代
//$(".outer+p").css("color","red") //毗邻
//$(".outer~p").css("color","red") //普通兄弟,向下不向上 </script> </body>
</html>
层级选择器示例
属性选择器
$('[id]') //属性名
$('[id="div1"]') //一整条属性
$('["bob="man"][id]') //多条属性
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <div bob="man">bob1</div>
<div bob="man" class="c1">bob2</div>
<div bob="man2">bob3</div> <script src="../2017.8.14/jquery-3.2.1.js"></script>
<script>
// ==================属性选择器 $("[bob]").css("color","red")
// $("[bob='man']").css("color","red")
// $("[bob='man'][class]").css("color","red") </script> </body>
</html>
属性选择器示例
表单选择器
只针对input表单,按照类型选择
$("[type='text']")
$(":text") //简写
$("input:checked").hide(); //hide()方法,隐藏元素
//以上选择器只适用于input标签,input:checked只能用于单选框和复选框
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <input type="text">
<input type="text">
<input type="text" >
<input type="checkbox" checked="checked"> <script src="../2017.8.14/jquery-3.2.1.js"></script>
<script>
// 针对input表单
$("[type='text']").css("border","1px solid red");
$("input:checked").hide();
//$(":text").css("border","1px solid green"); </script> </body>
</html>
表单选择器示例
表单属性选择器
:enabled
:disabled
:checked
:selected
body> <form>
<input type="checkbox" value="123" checked>
<input type="checkbox" value="456" checked> <select>
<option value="1">Flowers</option>
<option value="2" selected="selected">Gardens</option>
<option value="3" selected="selected">Trees</option>
<option value="3" selected="selected">Trees</option>
</select>
</form> <script src="jquery.min.js"></script>
<script>
// console.log($("input:checked").length); // 2 // console.log($("option:selected").length); // 只能默认选中一个,所以只能lenth:1 $("input:checked").each(function(){ console.log($(this).val())
}) </script> </body>
表单属性选择器示例
筛选器
基本筛选器
$("li:first") //按索引取第一个
$("li:eq(2)") //按索引取第三个
$("li:even") //取偶数
$("li:odd") //取偶数
$("li:gt(1)") //大于索引1,也有lt小于
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <ul class="box">
<li class="item">111</li>
<li class="item">222</li>
<li class="item">333</li>
<li class="item">444</li>
<li class="item">555</li>
<li class="item">666</li>
</ul> <script src="../2017.8.14/jquery-3.2.1.js"></script>
<script> // $("li:first").css("color","red");
// $("li:odd").css("color","red");
// $("li:even").css("color","red");
// $("li:eq(3)").css("color","red");
// $("li:gt(1)").css("color","red");
$("li:gt(1):lt(3)").css("color","red"); //链式语法,前面的大于1的结果然后在结果上再小于3 </script> </body>
</html>
基本删选器示例
过滤筛选器
推荐的筛选器写法,可用于传变量
$("li").eq(2)
$("li").first()
$("ul li").hasClass("test") //判断是否存在class为test的元素
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <ul class="box">
<li class="item">111</li>
<li class="item">222</li>
<li class="item">333</li>
<li class="item">444</li>
<li class="item">555</li>
<li class="item">666</li>
</ul> <script src="../2017.8.14/jquery-3.2.1.js"></script>
<script>
var $x=3
$("ul li").eq($x).css("color","red");
console.log($("ul li").hasClass('item'));
</script>
</body>
</html>
过滤删选器示例
查找筛选器
//查找子标签:
$("div").children(".test")
$("div").find(".test") //向下查找兄弟标签:
$(".test").next()
$(".test").nextAll()
$(".test").nextUntil() //向上查找兄弟标签:
$("div").prev()
$("div").prevAll()
$("div").prevUntil() //查找所有兄弟标签:
$("div").siblings() //查找父标签:
$(".test").parent()
$(".test").parents()
$(".test").parentUntil()
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <div class="c1">
<div class="c3">
DIV
<div class="c4">
<p class="p1">P1</p>
</div>
</div>
<p>P2</p>
</div> <div class="c1">
<p class="item" id="d1">p3</p>
<p class="item">p4</p>
<p class="item">p5</p>
<p class="item" id="d4">p6</p>
<p class="item">p7</p>
</div> <div id="c1" egon="123"></div> <script src="../2017.8.14/jquery-3.2.1.js"></script>
<script>
// jquery支持链式操作:前一段的结果给后一段执行 //查找子标签
//$("div").children(".item").css("color","red") //所有后代
//$("div").find(".p1 ").css("color","red") //所有子代 //==========================================找兄弟标签
//next
//$("#d1").next().css("color","red").next().css("color","green");
//$("#d1").nextAll().css("color","red");
//$("#d1").nextUntil("#d4").css("color","red"); //结果为p4、p5 //prev同next,只是方向为向上 //siblings
//$("#d4").siblings().css("color","red"); //===============================================找父标签
//console.log($(".p1").parent().parent().attr("class"))
//console.log($(".p1").parents().attr("class"))
//$(".p1").parents().css("color","red")
//$(".p1").parentsUntil(".c1").css("border","1px solid red") </script> </body>
</html>
查找筛选器示例
操作元素(属性、css、文档处理)
事件
页面载入
语法
ready(fn) // 当DOM载入就绪可以查询及操纵时绑定一个要执行的函数。
$(document).ready(function(){}) -----------> $(function(){})
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="../2017.8.14/jquery-3.2.1.js"></script>
</head>
<body>
<script>
$(document).ready(function(){
alert(123)
})
// $(function(){
// alert(123)
// }) </script> </body>
</html>
页面载入示例
事件绑定
语法
jquery_obj集合.事件(function(){})
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <ul id="box">
<li class="item">111</li>
<li class="item">222</li>
<li class="item">333</li>
<li class="item">444</li>
<li class="item">555</li>
</ul> <script src="../2017.8.14/jquery-3.2.1.js"></script>
<script> $(".item").click(function () {
alert($(this).index())
}); </script>
</body>
</html>
事件绑定示例
补充
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <ul id="box">
<li class="item">111</li>
<li class="item">222</li>
<li class="item">333</li>
<li class="item">444</li>
<li class="item">555</li>
</ul> <script src="../2017.8.14/jquery-3.2.1.js"></script>
<script> // ====================bind $(".item").bind("click",function () {
alert(123)
}); </script>
</body>
</html>
绑定方法补充,现在jq版本等于已经被遗弃了
事件委派
在原有标签基础上,后边添加的标签,继承原有标签的事件
语法
jquery_obj集合.on(事件,[selector],[data],function)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <ul id="box">
<li class="item">111</li>
<li class="item">222</li>
<li class="item">333</li>
<li class="item">444</li>
<li class="item">555</li>
</ul> <button class="add">ADD</button> <script src="../2017.8.14/jquery-3.2.1.js"></script>
<script>
$(".item").click(function () {
alert($(this).index())
}); // on方法
$("#box").on("click",".item",function () {
// alert($(this).html());
alert($(this).index());
}); //添加一个标签,点击该标签显示索引
$(".add").click(function () {
$("#box").append("<div class='item'>666</div>")
}); </script>
</body>
</html>
事件委派示例
事件委派清除
清除标签绑定的事件
语法
jquery_obj集合.off(事件)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <ul id="box">
<li class="item">111</li>
<li class="item">222</li>
<li class="item">333</li>
<li class="item">444</li>
<li class="item">555</li>
</ul> <button class="add">ADD</button>
<button class="releave">off</button> <script src="../2017.8.14/jquery-3.2.1.js"></script>
<script> $("#box").on("click",".item",function () {
alert($(this).index());
}); $(".add").click(function () {
$("#box").append("<div class='item'>666</div>")
}); $(".releave").click(function () {
//绑定给那个对象就解除哪个对象的事件委派
$("#box").off("click")
}); </script>
</body>
</html>
事件委派清除
事件切换
hover事件
一个模仿悬停事件(鼠标移动到一个对象上面及移出这个对象)的方法。这是一个自定义的方法,它为频繁使用的任务提供了一种“保持在其中”的状态。
over:鼠标移到元素上要触发的函数
out:鼠标移出元素要触发的函数
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
*{
margin: 0;
padding: 0;
}
.test{
width: 200px;
height: 200px;
background-color: wheat; }
</style>
</head>
<body> <div class="test"></div> <script src="../2017.8.14/jquery-3.2.1.js"></script>
<script>
function enter(){
alert("enter")
}
function out(){
alert("out")
}
$(".test").hover(enter,out) // $(".test").mouseenter(function(){
// alert("enter")
// }); // $(".test").mouseleave(function(){
// alert("leave")
// }); </script>
</body> </html>
hover示例
属性操作
CSS类操作
语法
$("").addClass(class|fn)
$("").removeClass([class|fn])
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>tab</title> <style>
*{
margin: 0;
padding: 0;
}
.tab_outer{
margin: 20px auto;
width: 60%;
}
.menu{
background-color: #cccccc;
line-height: 40px;
text-align: center;
}
.menu li{
display: inline-block;
margin-left: 14px;
padding:5px 20px; }
.menu a{
border-right: 1px solid red;
padding: 11px;
}
.content{
background-color: tan;
border: 1px solid green;
height: 300px; }
.hide{
display: none;
} .current{
background-color: #2868c8;
color: white;
border-top: solid 2px rebeccapurple;
}
</style>
</head>
<body>
<div class="tab_outer">
<ul class="menu">
<li relation="c1" class="current">菜单一</li>
<li relation="c2" >菜单二</li>
<li relation="c3">菜单三</li>
</ul>
<div class="content">
<div id="c1">内容一</div>
<div id="c2" class="hide">内容二</div>
<div id="c3" class="hide">内容三</div>
</div> </div>
</body> <script src="../2017.8.14/jquery-3.2.1.js"></script>
<script>
$(".menu li").click(function(){
var index=$(this).attr("relation");
$("#"+index).removeClass("hide").siblings().addClass("hide");
$(this).addClass("current").siblings().removeClass("current");
});
</script>
</html>
CSS类操作示例-tab
属性操作
语法
$("").attr();
$("").removeAttr();
$("").prop();
$("").removeProp();
<input id="chk1" type="checkbox" />是否可见
<input id="chk2" type="checkbox" checked="checked" />是否可见 <script> //对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。
//对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法。
//像checkbox,radio和select这样的元素,选中属性对应“checked”和“selected”,这些也属于固有属性,因此
//需要使用prop方法去操作才能获得正确的结果。 // $("#chk1").attr("checked")
// undefined
// $("#chk1").prop("checked")
// false // ---------手动选中的时候attr()获得到没有意义的undefined-----------
// $("#chk1").attr("checked")
// undefined
// $("#chk1").prop("checked")
// true console.log($("#chk1").prop("checked"));//false
console.log($("#chk2").prop("checked"));//true
console.log($("#chk1").attr("checked"));//undefined
console.log($("#chk2").attr("checked"));//checked
</script>
属性操作示例
HTML/Text/value
语法
$("").html([val|fn])
$("").text([val|fn])
$("").val([val|fn|arr])
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src='../day48/jquery-3.2.1.js'></script>
</head>
<body> <div class="c1">
<p>PPP</p>
</div> <input type="text" value="123"> <div value="123"></div> <script> // 取值操作
// html是标签操作、text是文本操作
// console.log($(".c1").html());
// console.log($(".c1").text()); //赋值操作
// $(".c1").html("<a href=''>click</a>")
// $(".c1").text("<a href=''>click</a>") // 对value属性取值和赋值操作
//console.log($(":text").val()); //取值
//$(":text").val(456); //赋值 // 注意:value属性必须是固有属性
console.log($("div").val()) // 取不到value属性的值 </script>
</body>
</html>
HTML/Text/value示例
each循环
例如:
$("p").css("color","red")
运行的过程中内部是一个循环,但是如果该循环中的某一个元素需要特殊处理的时候,就不能使用内部的默认循环了
方式一
var arr=[111,222,333];
var obj={"name":"egon","age":123};
$.each(arr,function (i,j) {
console.log(i); //索引
console.log(j); //值
});
方式二
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src='../2017.8.14/jquery-3.2.1.js'></script>
</head>
<body> <p>111</p>
<p>222</p>
<p>333</p>
<p>444</p> <script>
$("p").each(function () {
console.log($(this).index()); // $(this) ----=>代指当前循环到的标签对象
}) // 注意:下面的this指代$("p")集合中的一个元素
// $("p").click(function () {
// console.log($(this).index())
// }); </script>
</body>
</html>
each扩展
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src='../2017.8.14/jquery-3.2.1.js'></script>
</head>
<body> <p>111</p>
<p>222</p>
<p>333</p>
<p>444</p> <script> // 示例1
//function f(){
// for(var i=0;i<4;i++){
// if (i==2){
// return
// }
// console.log(i)
// }
//}
//f(); //示例2
//li=[11,22,33,44];
//$.each(li,function(i,v){
//
// if (v==33){
// return false; // ===试一试 return false会怎样?
// }
// console.log(v)
//});
// each的参数function内如果出现return 结束当次循环,类似于continue;
// 如果出现return False,结束的是整个each循环,类似break。 </script>
</body>
</html>
文档节点处理
创建一个标签对象
语法
$("<标签名>")
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src='jquery-3.2.1.js'></script>
</head>
<body>
<div class="outer">
</div>
<script>
var $ele=$("<p>"); // <p></p>
$ele.text("hello world"); // <p>hello world</p>
</script>
</body>
</html>
创建节点示例
标签内部插入标签对象
语法
$("").append(content|fn) ----->$("p").append("<b>Hello</b>");
$("").appendTo(content) ----->$("p").appendTo("div");
$("").prepend(content|fn) ----->$("p").prepend("<b>Hello</b>");
$("").prependTo(content) ----->$("p").prependTo("#foo");
注意:可以使用function添加内容
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src='../day47/jquery-3.2.1.js'></script>
</head>
<body>
<div class="outer">
<p>abc</p>
</div> <script>
//内部插入
var $ele=$("<p>"); // <p></p>
$ele.text("hello world"); // <p>hello world</p> // 追加到最后的位置
$(".outer").append($ele);
// $ele.appendTo(".outer"); // 添加到最上面的位置
var $ele2=$("<p>")
$ele2.text("thank you");
$(".outer").prepend($ele2);
// $ele.prependTo(".outer")
</script>
</body>
</html>
内部插入示例
标签外部插入标签对象
语法
$("").after(content|fn) ----->$("p").after("<b>Hello</b>");
$("").before(content|fn) ----->$("p").before("<b>Hello</b>");
$("").insertAfter(content) ----->$("p").insertAfter("#foo");
$("").insertBefore(content) ----->$("p").insertBefore("#foo");
注意:可以使用function添加内容
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src='../day47/jquery-3.2.1.js'></script>
</head>
<body> <div class="outer">
<p>abc</p>
</div> <script>
//内部插入
var $ele=$("<p>");
$ele.text("hello world");
// 在标签后添加
$(".outer").after($ele) //
//$($ele).insertAfter(".outer") //在标签前添加
var $ele2=$("<p>")
$ele2.text("thank you");
$(".outer").before($ele2)
//$($ele2).insertBefore(".outer") </script>
</body>
</html>
外部插入示例
删除节点
语法
$("").empty() //内容删除
$("").remove([expr] //整个标签删除
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src='../day47/jquery-3.2.1.js'></script>
</head>
<body> <div class="outer">
<p>abc</p>
</div> <script> // 删除节点,连标签清除
// $(".outer").remove()
// 清空节点,内容清除
$(".outer").empty(); </script>
</body>
</html>
删除节点示例
替换节点
语法
$("").replaceWith(content|fn)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src='../day47/jquery-3.2.1.js'></script>
</head>
<body> <div class="outer">
<p>abc</p>
</div> <script> // 替换节点
var $ele=$("<p>");
$ele.text("hello world");
$(".outer p").replaceWith($ele); </script>
</body>
</html>
替换节点示例
拷贝节点
语法
$("").clone([Even[,deepEven]])
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src='../day47/jquery-3.2.1.js'></script>
</head>
<body> <div class="outer">
<p>abc</p>
</div> <script> // 拷贝节点
var $outer=$(".outer").clone();
$(".outer").after($outer) </script>
</body>
</html>
拷贝节点示例
动画效果
显示与隐藏
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src='../day47/jquery-3.2.1.js'></script>
</head>
<body>
<p>hello world</p>
<img src="http://img1.imgtn.bdimg.com/it/u=1020860587,2909379450&fm=26&gp=0.jpg" alt="">
<hr>
<button class="hides">hide</button>
<button class="shows">show</button>
<button class="toggle">toggle</button> <script>
//注意:不加时间试一试
//点击事件触发隐藏
$(".hides").click(function () {
$("img").hide(1000)
});
//点击事件触发显示
$(".shows").click(function () {
$("img").show(1000)
});
//点击事件触发显示和隐藏的切换
$(".toggle").click(function () {
$("img").toggle(1000)
})
</script>
</body>
</html>
显示与隐藏示例
滑动
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src='jquery-3.2.1.js'></script>
</head>
<body> <p style="background-color: #2459a2;color: white;text-align: center;line-height: 40px">hello world</p> <img src="http://img1.imgtn.bdimg.com/it/u=1020860587,2909379450&fm=26&gp=0.jpg" alt="">
<hr>
<button class="slideUp">slideUp</button>
<button class="slideDown">slideDown</button>
<button class="slideToggle">slideToggle</button> <script>
//注:不加时间试一试
//向上滑动消失
$(".slideUp").click(function () {
$("p").slideUp(1000);
});
//向下滑动出现
$(".slideDown").click(function () {
$("p").slideDown(1000)
});
//向上向下切换
$(".slideToggle").click(function () {
$("p").slideToggle(1000)
}) </script>
</body>
</html>
滑动示例
淡入淡出
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src='jquery-3.2.1.js'></script>
</head>
<body>
<p style="background-color: #2459a2;color: white;text-align: center;line-height: 40px">hello world</p>
<img src="http://img1.imgtn.bdimg.com/it/u=1020860587,2909379450&fm=26&gp=0.jpg" alt=""><hr>
<button class="fadeIn">fadeIn</button>
<button class="fadeOut">fadeOut</button>
<button class="fadeToggle">fadeToggle</button>
<button class="fadeTo">fadeTo</button> <script>
//淡入
$(".fadeIn").click(function () {
$("img").fadeIn(2000);
});
//淡出
$(".fadeOut").click(function () {
$("img").fadeOut(2000)
});
//淡出淡入切换
$(".fadeToggle").click(function () {
$("img").fadeToggle(1000)
})
//淡出或淡入的程度
$(".fadeTo").click(function(){
$("img").fadeTo(1000,0.4);
})
</script>
</body>
</html>
淡入和淡出示例
回调函数
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src='../day47/jquery-3.2.1.js'></script> </head>
<body>
<button>hide</button>
<p>hello world</p> <script>
$("button").click(function(){
$("p").hide(1000,function(){
alert($(this).html())
})
})
</script>
</body>
</html>
回调函数示例
CSS操作
CSS位置操作
语法
$("").offset([coordinates]) //元素移动,定位对象是整个页面,
$("").position() //元素偏移(定位对象和offset不一样,是通过父亲标签定位)
$("").scrollTop([val]) //上下滚动条的值
$("").scrollLeft([val]) //左右滚动条的值
offset元素移动示例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
*{
margin: 0;
}
.box1{
width: 200px;
height: 200px;
background-color: yellowgreen;
}
.box2{
width: 200px;
height: 200px;
background-color: rebeccapurple;
}
</style>
<script src='../day47/jquery-3.2.1.js'></script>
</head>
<body>
<div class="box1"></div>
<div class="box2"></div>
<button>change</button> <script>
//元素移动的是根据整个页面的距离实现的,通过改变元素的上侧、左侧和整个页面的上侧和左侧的距离改变
$("button").click(function () {
//.box1向下移动200px
$(".box1").offset({left:0,top:200});
//.box2向下移动400px,向右移动200px
$(".box2").offset({left:200,top:400});
})
</script> </body>
</html>
元素移动示例
position元素偏移
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title> <style> *{
margin: 0;
}
.box1{
width: 200px;
height: 200px;
background-color: wheat;
}
.box2{
width: 200px;
height: 200px;
background-color: green;
} .outer{
position: relative;
}
</style>
<script src='../day47/jquery-3.2.1.js'></script>
</head>
<body> <div class="box1"></div>
<div class="outer">
<div class="box2"></div>
</div>
<button>change</button> <script>
$("button").click(function () {
alert("left"+$(".box1").position().left + "top" + $(".box1").position().top)
alert("left"+$(".box2").position().left + "top" + $(".box2").position().top)
</script>
</body>
</html>
position示例
scrollTop滚动条
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.box{
width: 100%;
height: 2000px;
background-color: wheat;
} #returnTop{
width: 70px;
height: 40px;
background-color: #2459a2;
color: white;
font-weight: 800;
text-align: center;
line-height: 40px;
position: fixed;
bottom: 20px;
right: 20px;
display: none;
}
</style>
<script src='../day47/jquery-3.2.1.js'></script>
</head>
<body> <div class="box"></div>
<div id="returnTop">TOP</div>
<script>
//scroll事件,滚动进度条时候
$(window).scroll(function () {
console.log($(window).scrollTop());
if($(window).scrollTop()>200){
$("#returnTop").show(); }
else {
$("#returnTop").hide();
}
});
//scrollTop括号里加数字,表示将滚动条位置滚至数字像素,不加数字表示取值
$("#returnTop").click(function () {
$(window).scrollTop(0)
})
</script>
</body>
</html>
scrollTop示例
尺寸操作
语法
$("").height([val|fn])
$("").width([val|fn])
$("").innerHeight()
$("").innerWidth()
$("").outerHeight([soptions])
$("").outerWidth([options])
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title> <style>
.box{
width: 200px;
height: 200px;
padding: 50px;
border: 10px red solid;
background-color: green;
margin: 20px;
}
</style>
<script src='../day47/jquery-3.2.1.js'></script>
</head>
<body> <div class="box">DIV</div> <script>
console.log($(".box").height()); //内容区高度200
console.log($(".box").width()); //内容区宽度200 console.log($(".box").innerHeight()); //内容区+padding区高度300
console.log($(".box").innerWidth()); //内容区+padding区宽度300 console.log($(".box").outerHeight()); //内容区+padding区+border边框区高度 320
console.log($(".box").outerWidth()); //内容区+padding区+border边框区宽度 320 console.log($(".box").outerHeight(true)); ///内容区+padding区+border边框区宽度+margin区高度 320
console.log($(".box").outerWidth(true)); ///内容区+padding区+border边框区宽度+margin区高度 320 </script>
</body>
</html>
尺寸操作示例
JQuery基础-DAY1的更多相关文章
- jQuery基础课程
环境搭建 搭建一个jQuery的开发环境非常方便,可以通过下列几个步骤进行. 下载jQuery文件库 在jQuery的官方网站(http://jquery.com)中,下载最新版本的jQuery文件库 ...
- JQuery基础总结上
最近在慕课网学习JQuery基础课程,发现只是跟随网站的课程学习而不去自己总结扩展的话,很难达到真正学会理解的地步. 于是先在网站上草草过了一遍课程,然后借着今天的这个时间边记录边重新整理学习一下. ...
- jQuery基础之选择器
摘自:http://www.cnblogs.com/webmoon/p/3169360.html jQuery基础之选择器 选择器是jQuery的根基,在jQuery中,对事件处理.遍历DOM和Aja ...
- jquery基础知识汇总
jquery基础知识汇总 一.简介 定义 jQuery创始人是美国John Resig,是优秀的Javascript框架: jQuery是一个轻量级.快速简洁的javaScript库.源码戳这 jQu ...
- 【jQuery基础学习】09 jQuery与前端(这章很水)
这章主要是将如何将jQuery应用到网站中,或者说其实就是一些前端知识,对于我这种后端程序来说其实还是蛮有用的. 关于网站结构 文件结构 前端文件分三个文件夹放 images文件夹用来存放将要用到的图 ...
- 【jQuery基础学习】00 序
作为一个从来没有认真学过jQuery的菜来讲,我所学的都是jQuery基础. 算是让自己从0开始系统学一遍吧.学习书籍为:<锋利的jQuery>. 虽然是个序,表示一下我是个菜,但还是来几 ...
- 8、网页制作Dreamweaver(jQuery基础:安装、语法)
在<网页制作Dreamweaver(悬浮动态分层导航)>中,运用到了jQuery的技术,轻松实现了菜单的下拉.显示.隐藏的效果,不必再用样式表一点点地修改,省去了很多麻烦,那么jQuery ...
- jquery 基础汇总---导图篇
最近在慕课网学习了一些jquery的基础知识,为了方便记忆,整理出来的导图 jQuery基础总共分为4个部分,分别是样式篇.事件篇.动画篇.DOM篇. 样式篇,主要介绍jQuery的基础语法,选择器以 ...
- jquery基础教程读书总结
最近静下心来看书才深刻的体会到:看书真的很重要,只有看书才能让你有心思静下心来思考. 重温<jquery基础教程> 一.事件 主要掌握常见的事件以及理解jquery的事件处理机制. 需要注 ...
随机推荐
- java保存json格式数据,保存字符串和读取字符串
1.java保存json格式数据,保存字符串和读取字符串 import java.io.*; class RWJson { public void wiite(String s, String toS ...
- 【文件上传】文件上传的form表单提交方式和ajax异步上传方式对比
一.html 表单代码 …… <input type="file" class="file_one" name="offenderExcelFi ...
- yii验证系统学习记录,基于yiicms(一)写的太长了,再写一篇(二)
项目地址:https://gitee.com/templi/yiicms 感谢七觞酒大神的付出,和免费分享.当然也感谢yii2的开发团队们. 项目已经安全完毕,不知道后台密码,这种背景下,后台无法进去 ...
- WCF REST 工作总结
首先引用System.ServiceModel;System.ServiceModel;System.ServiceModel.Activation;命名空间 [ServiceContract] pu ...
- connect by和strart with子句
--使用connect by和strart with子句 SELECT [level],column,expression, ... FROM table [WHERE where_clause] [ ...
- 【NOIP题解】NOIP2017 TG D2T3 列队
列队,NOIP2017 TG D2T3. 树状数组经典题. 题目链接:洛谷. 题意: Sylvia 是一个热爱学习的女孩子. 前段时间,Sylvia 参加了学校的军训.众所周知,军训的时候需要站方阵. ...
- python的面对对象
创建类 使用 class 语句来创建一个新类,class 之后为类的名称并以冒号结尾: class ClassName: '类的帮助信息' #类文档字符串 class_suite #类体 类的帮助信息 ...
- jq 监听input值的变化
$(".popWeiXing .name").bind("input propertychange", function() { modValue.diyDat ...
- Python和MySQL数据库交互PyMySQL
Python数据库操作 对于关系型数据库的访问,Python社区已经指定了一个标准,称为Python Database API SepcificationV2.0.MySQL.Qracle等特定数据库 ...
- [HBase]region split流程
1. 简介 HBase 的最小管理单位为region,region会按照region 分裂策略进行分裂. 基于CDH5.4.2 2. 总览