jQuery 是一个 JavaScript 库。jQuery 极大地简化了 JavaScript 编程。
$(document).ready()
$(document).ready() 方法允许我们在文档完全加载完后执行函数。
jQuery 选择器
jQuery 选择器允许您对 HTML 元素组或单个元素进行操作。
jQuery 选择器基于元素的 id、类、类型、属性、属性值等"查找"(或选择)HTML 元素。 它基于已经存在的 CSS 选择器,除此之外,它还有一些自定义的选择器。
jQuery 中所有选择器都以美元符号开头:$()。
$(this).hide() 演示 jQuery 的 hide() 函数,隐藏当前的 HTML 元素。
$(document).ready(function(){
$("button").click(function(){
$(this).hide();
});
});
标签选择器$("p").hide() 演示 jQuery 的 hide() 函数,隐藏所有
元素。
$(document).ready(function(){
$("button").click(function(){
$("p").hide();
});
});
这是一个标题
这是一个段落。
这是另一个段落。
类选择器$(".test").hide() 演示 jQuery 的 hide() 函数,隐藏所有 class="test" 的元素。
$(document).ready(function(){
$("button").click(function(){
$(".test").hide();
});
});
这是一个标题
这是一个段落。
这是另外一个段落。
id选择器 $("#test").hide()演示 jQuery 的 hide() 函数,隐藏 id="test" 的元素。
$(document).ready(function(){
$("button").click(function(){
$("#test").hide();
});
});
这是一个标题
这是一个段落
这是另外一个段落
jQuery 事件
jQuery click() 演示 jQuery jQuery click() 单击事件.
$(document).ready(function(){
$("p").click(function(){
$(this).hide();
});
});
如果你点我,我就会消失。
点我消失!
点我也消失!
jQuery dblclick()演示 jQuery dblclick() 双击事件。
$(document).ready(function(){
$("p").dblclick(function(){
$(this).hide();
});
});
双击鼠标左键的,我就消失。
双击我消失!
双击我也消失!
jQuery mouseenter()演示 jQuery mouseenter() 鼠标进入事件。
$(document).ready(function(){
$("#p1").mouseenter(function(){
alert('您的鼠标移到了 id="p1" 的元素上!');
});
});
鼠标指针进入此处,会看到弹窗。
jQuery mouseleave() 演示 jQuery mouseleave() 鼠标离开事件。
$(document).ready(function(){
$("#p1").mouseleave(function(){
alert("再见,您的鼠标离开了该段落。");
});
});
这是一个段落。
jQuery mousedown() 演示 jQuery mousedown() 鼠标按下事件。
$(document).ready(function(){
$("#p1").mousedown(function(){
alert("鼠标在该段落上按下!");
});
});
这是一个段落
jQuery mouseup() 演示 jQuery mouseup() 鼠标松开事件。
$(document).ready(function(){
$("#p1").mouseup(function(){
alert("鼠标在段落上松开。");
});
});
这是一个段落。
jQuery hover() 演示 jQuery hover() 事件。
$(document).ready(function(){
$("#p1").hover(
function(){
alert("你进入了 p1!");
},
function(){
alert("拜拜! 现在你离开了 p1!");
}
)
});
这是一个段落。
jQuery focus() 和 blur() 演示 jQuery focus() 和 blur() 事件。
$(document).ready(function(){
$("input").focus(function(){
$(this).css("background-color","#cccccc");
});
$("input").blur(function(){
$(this).css("background-color","#ffffff");
});
});
Name:
Email:
jQuery 效果
jQuery 隐藏/显示
jQuery hide() 演示 jQuery hide() 方法--隐藏。
$(document).ready(function(){
$("p").click(function(){
$(this).hide();
});
});
如果你点我,我就会消失。
继续点我!
接着点我!
jQuery hide() 和 show() 演示jQuery hide() 和 show() 方法。
$(document).ready(function(){
$("#hide").click(function(){
$("p").hide();
});
$("#show").click(function(){
$("p").show();
});
});
如果你点击“隐藏” 按钮,我将会消失。
jQuery toggle() jQuery toggle() 用于切换 hide() 和 show() 方法。
$(document).ready(function(){
$("button").click(function(){
$("p").toggle();
});
});
这是一个文本段落。
这是另外一个文本段落。
jQuery hide() 另外一个隐藏文本的实例。
$(document).ready(function(){
$(".ex .hide").click(function(){
$(this).parents(".ex").hide("slow");
});
});
div.ex
{
background-color:#e5eecc;
padding:7px;
border:solid 1px #c3c3c3;
}
站点名: Google
站点 URL:http://www.google.com
菜鸟教程
站点名: 菜鸟教程
站点 URL:http://www.runoob.com
重点: hide()和show()的参数选择
语法:
$(selector).hide(speed,callback);
$(selector).show(speed,callback);
可选的 speed 参数规定隐藏/显示的速度,可以取以下值:"slow"、"fast" 或毫秒。
可选的 callback 参数是隐藏或显示完成后所执行的函数名称。
下面的例子演示了带有 speed 参数的 hide() 方法:
实例
$("button").click(function(){
$("p").hide(1000);
});
$(document).ready(function(){
$(".hidebtn").click(function(){
$("div").hide(1000,"linear",function(){
alert("Hide() 方法已完成!");
});
});
});
jQuery淡入淡出
一、注意大小写,fadeIn() fadeOut() fadeToggle() fadeTo() 大小写不能变。
二、fadeTo() 没有默认参数,必须加上 slow/fast/Time
jQuery fadeIn()淡入
$(document).ready(function(){
$("button").click(function(){
$("#div1").fadeIn();
$("#div2").fadeIn("slow");
$("#div3").fadeIn(3000);
});
});
以下实例演示了 fadeIn() 使用了不同参数的效果。
jQuery fadeOut()淡出
$(document).ready(function(){
$("button").click(function(){
$("#div1").fadeOut();
$("#div2").fadeOut("slow");
$("#div3").fadeOut(3000);
});
});
以下实例演示了 fadeOut() 使用了不同参数的效果。
jQuery fadeToggle()淡入淡出切换
$(document).ready(function(){
$("button").click(function(){
$("#div1").fadeToggle();
$("#div2").fadeToggle("slow");
$("#div3").fadeToggle(3000);
});
});
实例演示了 fadeToggle() 使用了不同的 speed(速度) 参数。
fadeTo() 使用不同参数改变透明度
$(document).ready(function(){
$("button").click(function(){
$("#div1").fadeTo("slow",0.15);
$("#div2").fadeTo("slow",0.4);
$("#div3").fadeTo("slow",0.7);
});
});
演示 fadeTo() 使用不同参数
jQuery - 滑动
jQuery slideDown()向下滑动
可选的 speed 参数规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。
可选的 callback 参数是滑动完成后所执行的函数名称
$(document).ready(function(){
$("#flip").click(function(){
$("#panel").slideDown("slow");
});
});
#panel,#flip
{
padding:5px;
text-align:center;
background-color:#e5eecc;
border:solid 1px #c3c3c3;
}
#panel
{
padding:50px;
display:none;
}
jQuery slideUp()向上滑动
可选的 speed 参数规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。
可选的 callback 参数是滑动完成后所执行的函数名称
$(document).ready(function(){
$("#flip").click(function(){
$("#panel").slideUp("slow");
});
});
#panel,#flip
{
padding:5px;
text-align:center;
background-color:#e5eecc;
border:solid 1px #c3c3c3;
}
#panel
{
padding:50px;
}
jQuery slideToggle()滑动切换
如果元素向下滑动,则 slideToggle() 可向上滑动它们。
如果元素向上滑动,则 slideToggle() 可向下滑动它们
$(document).ready(function(){
$("#flip").click(function(){
$("#panel").slideToggle("slow");
});
});
#panel,#flip
{
padding:5px;
text-align:center;
background-color:#e5eecc;
border:solid 1px #c3c3c3;
}
#panel
{
padding:50px;
display:none;
}
jQuery- 动画
jQuery animate() 方法用于创建自定义动画。
语法:
$(selector).animate({params},speed,callback);
必需的 params 参数定义形成动画的 CSS 属性。
可选的 speed 参数规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。
可选的 callback 参数是动画完成后所执行的函数名称。
$(document).ready(function(){
$("button").click(function(){
$("div").animate({left:'250px'});
});
});
默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。
如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!
jQuery animate() - 操作多个属性
$(document).ready(function(){
$("button").click(function(){
$("div").animate({
left:'250px',
opacity:'0.5',
height:'150px',
width:'150px'
});
});
});
默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。
如果需要改变,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!
可以用 animate() 方法来操作所有 CSS 属性吗?
是的,几乎可以!不过,需要记住一件重要的事情:当使用 animate() 时,必须使用 Camel 标记法书写所有的属性名,比如,必须使用 paddingLeft 而不是 padding-left,使用 marginRight 而不是 margin-right,等等。
同时,色彩动画并不包含在核心 jQuery 库中。
如果需要生成颜色动画,您需要从 jquery.com 下载 颜色动画 插件。
jQuery animate() - 使用相对值
也可以定义相对值(该值相对于元素的当前值)。需要在值的前面加上 += 或 -=:
$(document).ready(function(){
$("button").click(function(){
$("div").animate({
left:'250px',
height:'+=150px',
width:'+=150px'
});
});
});
默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。
如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!
jQuery animate() - 使用预定义的值
您甚至可以把属性的动画值设置为 "show"、"hide" 或 "toggle":
$(document).ready(function(){
$("button").click(function(){
$("div").animate({
height:'toggle'
});
});
});
默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。
如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!
jQuery animate() - 使用队列功能
默认地,jQuery 提供针对动画的队列功能。
这意味着如果您在彼此之后编写多个 animate() 调用,jQuery 会创建包含这些方法调用的"内部"队列。然后逐一运行这些 animate 调用
$(document).ready(function(){
$("button").click(function(){
var div=$("div");
div.animate({height:'300px',opacity:'0.4'},"slow");
div.animate({width:'300px',opacity:'0.8'},"slow");
div.animate({height:'100px',opacity:'0.4'},"slow");
div.animate({width:'100px',opacity:'0.8'},"slow");
});
});
默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。
如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!
$(document).ready(function(){
$("button").click(function(){
var div=$("div");
div.animate({left:'100px'},"slow");
div.animate({fontSize:'3em'},"slow");
//链式编程
//div.animate({left:'100px'},"slow").animate({fontSize:'3em'},"slow");
});
});
默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。
如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!
队列操作
jquery中有一个Queue队列的接口,这个是内部专门为动画服务的,
队列是一种特殊的线性表,只允许在表的前端(队头)进行删除操作(出队),在表的后端(队尾)进行出入操作(入队),队列的特点是先进先出,最先插入的元素最先被删除。
jQuery 停止动画
jQuery stop() 方法
jQuery stop() 方法用于停止动画或效果,在它们完成之前。
stop() 方法适用于所有 jQuery 效果函数,包括滑动、淡入淡出和自定义动画。
语法:
$(selector).stop(stopAll,goToEnd);
可选的 stopAll 参数规定是否应该清除动画队列。默认是 false,即仅停止活动的动画,允许任何排入队列的动画向后执行。
可选的 goToEnd 参数规定是否立即完成当前动画。默认是 false。
因此,默认地,stop() 会清除在被选元素上指定的当前动画。
$(document).ready(function(){
$("#flip").click(function(){
$("#panel").slideDown(5000);
});
$("#stop").click(function(){
$("#panel").stop();
});
});
#panel,#flip
{
padding:5px;
text-align:center;
background-color:#e5eecc;
border:solid 1px #c3c3c3;
}
#panel
{
padding:50px;
display:none;
}
$(document).ready(function(){
$("#start").click(function(){
$("div").animate({left:'100px'},5000);
$("div").animate({fontSize:'3em'},5000);
});
$("#stop").click(function(){
$("div").stop();//停止
});
$("#stop2").click(function(){
$("div").stop(true);//停止所有
});
$("#stop3").click(function(){
$("div").stop(true,true);//停止动画,但完成动作
});
});
点击 "开始" 按钮开始动画。
点击 "停止" 按钮停止当前激活的动画,但之后我们能再动画队列中再次激活。
点击 "停止所有" 按钮停止当前动画,并清除动画队列,所以元素的所有动画都会停止。
点击 "停止动画,但完成动作" 快速完成动作,并停止它。
jQuery Callback 方法
在隐藏效果完全实现后回调函数
$(document).ready(function(){
$("button").click(function(){
$("p").hide("slow",function(){
alert("段落现在被隐藏了");
});
});
});
我们段落内容,点击“隐藏”按钮我就会消失
没有回调函数
$(document).ready(function(){
$("button").click(function(){
$("p").hide(1000);
alert("现在段落被隐藏了");
});
});
这是一个段落,内容很少
jQuery - 链(Chaining)
通过 jQuery,可以把动作/方法链接在一起。
Chaining 允许我们在一条语句中运行多个 jQuery 方法(在相同的元素上)。
提示:当进行链接时,代码行会变得很长。不过,jQuery 语法不是很严格;您可以按照希望的格式来写,包含换行和缩进。jQuery 会抛掉多余的空格,并当成一行长代码来执行上面的代码行。
$(document).ready(function()
{
$("button").click(function(){
$("#p1").css("color","red").slideUp(2000).slideDown(2000);
});
});
菜鸟教程!!
$(document).ready(function()
{
$("button").click(function(){
$("#p1").css("color","red")
.slideUp(2000)
.slideDown(2000);
});
});
菜鸟教程!!
jQuery HTML
jQuery - 获取内容和属性
获得内容 - text()、html() 以及 val()
三个简单实用的用于 DOM 操作的 jQuery 方法:
a. text() - 设置或返回所选元素的文本内容
b. html() - 设置或返回所选元素的内容(包括 HTML 标签)
c. val() - 设置或返回表单字段的值
$(document).ready(function(){
$("#btn1").click(function(){
alert("Text: " + $("#test").text());
});
$("#btn2").click(function(){
alert("HTML: " + $("#test").html());
});
});
这是段落中的 粗体 文本。
通过 jQuery val() 方法获得输入字段的值
$(document).ready(function(){
$("button").click(function(){
alert("值为: " + $("#test").val());
});
});
名称:
获取属性 - attr()
$(document).ready(function(){
$("button").click(function(){
alert($("#runoob").attr("href"));
});
});
获取属性 - prop ()
$(document).ready(function(){
$("button").click(function(){
alert($("#runoob").prop ("href"));
});
});
attr 和 prop 的区别介绍:
对于 HTML 元素本身就带有的固有属性,在处理时,使用 prop 方法。
这个例子里 元素的 DOM 属性有: href、target 和 class,
这些属性就是 元素本身就带有的属性,也是 W3C 标准里就包含有这几个属性,
或者说在 IDE 里能够智能提示出的属性,这些就叫做固有属性。
处理这些属性时,建议使用 prop 方法。
对于 HTML 元素我们自己自定义的 DOM 属性,在处理时,使用 attr 方法。
这个例子里 元素的 DOM 属性有: href、id 和 action,
很明显,前两个是固有属性,而后面一个 action 属性是我们自己自定义上去的,
处理这些属性时,建议使用 attr 方法。
prop()函数的结果:
1.如果有相应的属性,返回指定属性值。
2.如果没有相应的属性,返回值是空字符串。
attr()函数的结果:
1.如果有相应的属性,返回指定属性值。
2.如果没有相应的属性,返回值是 undefined。
对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。
对于HTML元素我们自己自定义的DOM属性,在处理时,使用 attr 方法。
具有 true 和 false 两个属性的属性,如 checked, selected 或者 disabled 使用prop()
jQuery - 设置内容和属性
设置内容 - text()、html() 以及 val()
text() - 设置或返回所选元素的文本内容html() - 设置或返回所选元素的内容(包括 HTML 标记)val() - 设置或返回表单字段的值
$(document).ready(function(){
$("#btn1").click(function(){
$("#test1").text("Hello world!");
});
$("#btn2").click(function(){
$("#test2").html("Hello world!");
});
$("#btn3").click(function(){
$("#test3").val("RUNOOB");
});
});
这是一个段落。
这是另外一个段落。
输入框:
text()、html() 以及 val() 的回调函数
上面的三个 jQuery 方法:text()、html() 以及 val(),同样拥有回调函数。回调函数有两个参数:被选元素列表中当前元素的下标,以及原始(旧的)值。然后以函数新值返回您希望使用的字符串。
下面的例子演示带有回调函数的 text() 和 html():
$(document).ready(function(){
$("#btn1").click(function(){
$("#test1").text(function(i,origText){
return "旧文本: " + origText + " 新文本: Hello world! (index: " + i + ")";
});
});
$("#btn2").click(function(){
$("#test2").html(function(i,origText){
return "旧 html: " + origText + " 新 html: Hello world! (index: " + i + ")";
});
});
});
这是一个有 粗体 字的段落。
这是另外一个有 粗体 字的段落。
设置属性 - attr()
jQuery attr() 方法也用于设置/改变属性值。
下面的例子演示如何改变(设置)链接中 href 属性的值:
$(document).ready(function(){
$("button").click(function(){
$("#runoob").attr("href","http://www.runoob.com/jquery");
});
});
点击按钮修改后,可以点击链接查看链接地址是否变化。
attr() 方法也允许您同时设置多个属性。
下面的例子演示如何同时设置 href 和 title 属性:
$(document).ready(function(){
$("button").click(function(){
$("#runoob").attr({
"href" : "http://www.runoob.com/jquery",
"title" : "jQuery 教程"
});
// 通过修改的 title 值来修改链接名称
title = $("#runoob").attr('title');
$("#runoob").html(title);
});
});
点击按钮修改后,可以查看 href 和 title 是否变化。
attr() 的回调函数
jQuery 方法 attr(),也提供回调函数。回调函数有两个参数:被选元素列表中当前元素的下标,以及原始(旧的)值。然后以函数新值返回您希望使用的字符串。
$(document).ready(function(){
$("button").click(function(){
$("#runoob").attr("href", function(i, origValue){
return origValue + "/jquery";
});
});
});
点击按钮修改后,可以点击链接查看 href 属性是否变化。
jQuery - 添加元素
添加新的 HTML 内容
append() - 在被选元素的结尾插入内容prepend() - 在被选元素的开头插入内容after() - 在被选元素之后插入内容before() - 在被选元素之前插入内容
1. append() - 在被选元素的结尾插入内容
$(document).ready(function(){
$("#btn1").click(function(){
$("p").append(" 追加文本。");
});
$("#btn2").click(function(){
$("ol").append("
});
});
这是一个段落。
这是另外一个段落。
- List item 1
- List item 2
- List item 3
2. prepend() - 在被选元素的开头插入内容
$(document).ready(function(){
$("#btn1").click(function(){
$("p").prepend("在开头追加文本。 ");
});
$("#btn2").click(function(){
$("ol").prepend("
});
});
这是一个段落。
这是另外一个段落。
- 列表 1
- 列表 2
- 列表 3
我们创建若干个新元素。这些元素可以通过 text/HTML、jQuery 或者 JavaScript/DOM 来创建。然后我们通过 append() 方法把这些新元素追加到文本中(对 prepend() 同样有效):
function appendText(){
var txt1="
文本-1。
"; // 使用 HTML 标签创建文本var txt2=$("").text("文本-2。"); // 使用 jQuery 创建文本
var txt3=document.createElement("p");
txt3.innerHTML="文本-3。"; // 使用 DOM 创建文本 text with DOM
$("body").append(txt1,txt2,txt3); // 追加新元素
}
这是一个段落。
3. jQuery after() 和 before() 方法
jQuery after() 方法在被选元素之后插入内容。
jQuery before() 方法在被选元素之前插入内容。
$(document).ready(function(){
$("#btn1").click(function(){
$("img").before("之前");
});
$("#btn2").click(function(){
$("img").after("之后");
});
});
4. 通过 after() 和 before() 方法添加若干新元素
after() 和 before() 方法能够通过参数接收无限数量的新元素。可以通过 text/HTML、jQuery 或者 JavaScript/DOM 来创建新元素。
在下面的例子中,我们创建若干新元素。这些元素可以通过 text/HTML、jQuery 或者 JavaScript/DOM 来创建。然后我们通过 after() 方法把这些新元素插到文本中(对 before() 同样有效):
function afterText(){
var txt1="I "; // 使用 HTML 创建元素
var txt2=$("").text("love "); // 使用 jQuery 创建元素
var txt3=document.createElement("big"); // 使用 DOM 创建元素
txt3.innerHTML="jQuery!";
$("img").after(txt1,txt2,txt3); // 在图片后添加文本
}
jQuery - 删除元素
删除元素/内容
如需删除元素和内容,一般可使用以下两个 jQuery 方法:
remove() - 删除被选元素(及其子元素)empty() - 从被选元素中删除子元素
jQuery remove() 方法 删除被选元素及其子元素。
$(document).ready(function(){
$("button").click(function(){
$("#div1").remove();
});
});
这是 div 中的一些文本。
这是在 div 中的一个段落。
这是在 div 中的另外一个段落。
jQuery empty() 方法 删除被选元素的子元素。
$(document).ready(function(){
$("button").click(function(){
$("#div1").empty();
});
});
这是 div 中的一些文本。
这是在 div 中的一个段落。
这是在 div 中的另外一个段落。
过滤被删除的元素
jQuery remove() 方法也可接受一个参数,允许您对被删元素进行过滤。
该参数可以是任何 jQuery 选择器的语法。
下面的例子删除 class="italic" 的所有
元素:
$(document).ready(function(){
$("button").click(function(){
$("p").remove(".italic");
});
});
这是一个段落。
这是另外一个段落。
这是另外一个段落。
jQuery - 获取并设置 CSS 类
jQuery 操作 CSS
jQuery 拥有若干进行 CSS 操作的方法。我们将学习下面这些:
addClass() - 向被选元素添加一个或多个类removeClass() - 从被选元素删除一个或多个类toggleClass() - 对被选元素进行添加/删除类的切换操作css() - 设置或返回样式属性
.important {
font-weight:bold;
font-size:xx-large;
}
.blue {
color:blue;
}
jQuery addClass() 方法
向不同的元素添加 class 属性。当然,在添加类时,您也可以选取多个元素:
$(document).ready(function(){
$("button").click(function(){
$("h1,h2,p").addClass("blue");
$("div").addClass("important");
});
});
.important
{
font-weight:bold;
font-size:xx-large;
}
.blue
{
color:blue;
}
标题 1
标题 2
这是一个段落。
这是另外一个段落。
您也可以在 addClass() 方法中规定多个类:
$(document).ready(function(){
$("button").click(function(){
$("body div:first").addClass("important blue");
});
});
.important
{
font-weight:bold;
font-size:xx-large;
}
.blue
{
color:blue;
}
jQuery removeClass() 方法
下面的例子演示如何在不同的元素中删除指定的 class 属性:
$(document).ready(function(){
$("button").click(function(){
$("h1,h2,p").removeClass("blue");
});
});
.important
{
font-weight:bold;
font-size:xx-large;
}
.blue
{
color:blue;
}
标题 1
标题 2
这是一个段落。
这是另外一个段落。
jQuery toggleClass() 方法
下面的例子将展示如何使用 jQuery toggleClass() 方法。该方法对被选元素进行添加/删除类的切换操作:
$(document).ready(function(){
$("button").click(function(){
$("h1,h2,p").toggleClass("blue");
});
});
.blue
{
color:blue;
}
标题 1
标题 2
这是一个段落。
这是另外一个段落。
addClass('c1 c2 ...' | function(i, c)) -- 添加一个或多个类。
removerClass('c1 c2 ...' | function(i, c)) -- 删除一个或多个类。
toggleClass('c1 c2 ...' | function(i, c), switch?) -- 切换一个或多个类的添加和删除。
jQuery css() 方法
css() 方法设置或返回被选元素的一个或多个样式属性。
返回 CSS 属性
如需返回指定的 CSS 属性的值,请使用如下语法:
css("propertyname");
返回首个匹配元素的 background-color 值:
$(document).ready(function(){
$("button").click(function(){
alert("背景颜色 = " + $("p").css("background-color"));
});
});
这是一个标题
这是一个段落。
这是一个段落。
这是一个段落。
设置 CSS 属性
如需设置指定的 CSS 属性,请使用如下语法:
css("propertyname","value");
$(document).ready(function(){
$("button").click(function(){
$("p").css("background-color","yellow");
});
});
这是一个标题
这是一个段落。
这是一个段落。
这是一个段落。
这是一个段落。
设置多个 CSS 属性
如需设置多个 CSS 属性,请使用如下语法:
css({"propertyname":"value","propertyname":"value",...});
$(document).ready(function(){
$("button").click(function(){
$("p").css({"background-color":"yellow","font-size":"200%"});
});
});
这是一个标题
这是一个段落。
这是一个段落。
这是一个段落。
这是一个段落。
jQuery 尺寸
jQuery 提供多个处理尺寸的重要方法:
width()height()innerWidth()innerHeight()outerWidth()outerHeight()
jQuery width() 和 height() 方法
width() 方法设置或返回元素的宽度(不包括内边距、边框或外边距)。
height() 方法设置或返回元素的高度(不包括内边距、边框或外边距)。
$(document).ready(function(){
$("button").click(function(){
var txt="";
txt+="div 的宽度是: " + $("#div1").width() + "";
txt+="div 的高度是: " + $("#div1").height();
$("#div1").html(txt);
});
});
width() - 返回元素的宽度
height() - 返回元素的高度
jQuery innerWidth() 和 innerHeight() 方法
innerWidth() 方法返回元素的宽度(包括内边距)。
innerHeight() 方法返回元素的高度(包括内边距)。
$(document).ready(function(){
$("button").click(function(){
var txt="";
txt+="div 宽度: " + $("#div1").width() + "";
txt+="div 高度: " + $("#div1").height() + "";
txt+="div 宽度,包含内边距: " + $("#div1").innerWidth() + "";
txt+="div 高度,包含内边距: " + $("#div1").innerHeight();
$("#div1").html(txt);
});
});
innerWidth() - 返回元素的宽度 (包含内边距)。
innerHeight() - 返回元素的高度 (包含内边距)。
jQuery outerWidth() 和 outerHeight() 方法
outerWidth() 方法返回元素的宽度(包括内边距和边框)。
outerHeight() 方法返回元素的高度(包括内边距和边框)。
下面的例子返回指定的
$(document).ready(function(){
$("button").click(function(){
var txt="";
txt+="div 宽度: " + $("#div1").width() + "";
txt+="div 高度: " + $("#div1").height() + "";
txt+="div 宽度,包含内边距和边框: " + $("#div1").outerWidth() + "";
txt+="div 高度,包含内边距和边框: " + $("#div1").outerHeight();
$("#div1").html(txt);
});
});
outerWidth() - 返回元素的宽度 (包含内边距和边框)。
outerHeight() - 返回元素的高度 (包含内边距和边框)。
box-sizing 设置为 content-box 时,width() 获取的值仍为element自身的宽度(border属性要加style,例如solid)
.runoob {width: 100px;height: 100px;padding: 10px;border: 15px solid black;box-sizing: content-box;}
width() 获取的值为: 100pxinnerWidth() 获取的值为: 120pxoutWidth() 获取的值为: 150px
当 box-sizing 设置为 border-box时,width() 获取的值是 css 设置的 width 减去 padding 和 border 的值(border属性要加style,例如solid)
.runoob {width: 100px;height: 100px;padding: 10px;border: 15px solid black;box-sizing: border-box;}
width() 获取的值为: 50pxinnerWidth() 获取的值为: 70pxoutWidth() 获取的值为: 100px
jQuery 遍历
jQuery 遍历,意为"移动",用于根据其相对于其他元素的关系来"查找"(或选取)HTML 元素。以某项选择开始,并沿着这个选择移动,直到抵达您期望的元素为止。
下图展示了一个家族树。通过 jQuery 遍历,您能够从被选(当前的)元素开始,轻松地在家族树中向上移动(祖先),向下移动(子孙),水平移动(同胞)。这种移动被称为对 DOM 进行遍历。
图示解析:
- 的父元素,同时是其中所有内容的祖先。
- 元素的父元素,同时是 的子元素左边的
- 元素是 的父元素,
- 的子元素,同时是
- 的子元素,同时是
- 和
- 元素是同胞(拥有相同的父元素)。右边的
- 元素是 的父元素,
- 的子元素,同时是
- 的子元素,同时是
- 和
- li (父元素)
span
- li (父元素)
span
- li (direct parent)
span
- li (父元素)
span
的后代。jQuery 遍历 - 祖先
祖先是父、祖父或曾祖父等等。
通过 jQuery,您能够向上遍历 DOM 树,以查找元素的祖先。
向上遍历 DOM 树
这些 jQuery 方法很有用,它们用于向上遍历 DOM 树:
parent()parents()parentsUntil()
jQuery parent() 方法--返回被选元素的直接父元素
parent() 方法返回被选元素的直接父元素。
该方法只会向上一级对 DOM 树进行遍历。
.ancestors *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
$(document).ready(function(){
$("span").parent().css({"color":"red","border":"2px solid red"});
});
div (曾祖父元素)- ul (祖父元素)
div (祖父元素)p (父元素)
span
jQuery parents() 方法--返回被选元素的所有祖先元素
parents() 方法返回被选元素的所有祖先元素,它一路向上直到文档的根元素 ()。
.ancestors *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
$(document).ready(function(){
$("span").parents().css({"color":"red","border":"2px solid red"});
});
body (曾曾祖父元素)div (曾祖父元素)- ul (祖父元素)
过滤对祖先元素的搜索
下面的例子返回所有 元素的所有祖先,并且它是
- 元素:
.ancestors *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
$(document).ready(function(){
$("span").parents("ul").css({"color":"red","border":"2px solid red"});
});
body (great-great-grandparent)div (great-grandparent)- ul (grandparent)
jQuery parentsUntil() 方法--返回介于两个给定元素之间的所有祖先元素
parentsUntil() 方法返回介于两个给定元素之间的所有祖先元素。
下面的例子返回介于 与
元素之间的所有祖先元素.ancestors *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
$(document).ready(function(){
$("span").parentsUntil("div").css({"color":"red","border":"2px solid red"});
});
body (曾曾祖父元素)div (曾祖父元素)- ul (祖父元素)
jQuery 遍历 - 后代
后代是子、孙、曾孙等等。
通过 jQuery,您能够向下遍历 DOM 树,以查找元素的后代。
向下遍历 DOM 树
下面是两个用于向下遍历 DOM 树的 jQuery 方法:
children()find()
jQuery children() 方法--返回被选元素的所有直接子元素
该方法只会向下一级对 DOM 树进行遍历。
.descendants *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
$(document).ready(function(){
$("div").children().css({"color":"red","border":"2px solid red"});
});
div (当前元素)p (儿子元素)
span (孙子元素)
p (儿子元素)
span (孙子元素)
使用可选参数来过滤对子元素的搜索
.descendants *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
$(document).ready(function(){
$("div").children("p.1").css({"color":"red","border":"2px solid red"});
});
div (当前元素)p (儿子元素)
span (孙子元素)
p (儿子元素)
span (孙子元素)
jQuery find() 方法--返回被选元素的后代元素,一路向下直到最后一个后代
.descendants *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
$(document).ready(function(){
$("div").find("span").css({"color":"red","border":"2px solid red"});
});
div (当前元素)p (儿子元素)
span (孙子元素)
p (儿子元素)
span (孙子元素)
.descendants *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
$(document).ready(function(){
$("div").find("*").css({"color":"red","border":"2px solid red"});
});
div (当前元素)p (儿子元素)
span (孙子元素)
p (儿子元素)
span (孙子元素)
jQuery 遍历 - 同胞(siblings)--水平遍历
同胞拥有相同的父元素。通过 jQuery,您能够在 DOM 树中遍历元素的同胞元素。
在 DOM 树中水平遍历
有许多有用的方法让我们在 DOM 树进行水平遍历:
siblings()next()nextAll()nextUntil()prev()prevAll()prevUntil()
jQuery siblings() 方法--返回被选元素的所有同胞元素(不包括被选元素)。
.siblings *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
$(document).ready(function(){
$("h2").siblings().css({"color":"red","border":"2px solid red"});
});
div (父元素)p
span
h2
h3
p
使用可选参数siblings("p")来过滤对同胞元素的搜索
.siblings *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
$(document).ready(function(){
$("h2").siblings("p").css({"color":"red","border":"2px solid red"});
});
div (父元素)p
span
h2
h3
p
jQuery next() 方法--返回被选元素的下一个同胞元素
.siblings *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
$(document).ready(function(){
$("h2").next().css({"color":"red","border":"2px solid red"});
});
div (父元素)p
span
h2
h3
p
jQuery nextAll() 方法--返回被选元素的所有跟随的同胞元素。
.siblings *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
$(document).ready(function(){
$("h2").nextAll().css({"color":"red","border":"2px solid red"});
});
div (父元素)p
span
h2
h3
p
jQuery nextUntil() 方法--返回介于两个给定参数之间的所有跟随的同胞元素
.siblings *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
$(document).ready(function(){
$("h2").nextUntil("h6").css({"color":"red","border":"2px solid red"});
});
div (父元素)p
span
h2
h3
h4
h5
h6
p
Query prev(), prevAll() & prevUntil() 方法--水平向前遍历
prev(), prevAll() 以及 prevUntil() 方法的工作方式与上面的方法类似,只不过方向相反而已:它们返回的是前面的同胞元素(在 DOM 树中沿着同胞之前元素遍历,而不是之后元素遍历)。
jQuery 遍历- 过滤
三个最基本的过滤方法是:
first(),
last() 和 eq(),
它们允许您基于其在一组元素中的位置来选择一个特定的元素。
其他过滤方法,比如 filter() 和 not() 允许您选取匹配或不匹配某项指定标准的元素。
jQuery first() 方法--返回被选元素的首个元素
$(document).ready(function(){
$("div p").first().css("background-color","yellow");
});
欢迎访问我的主页
这是 div 中的一个段落。
这是另外一个 div 中的一个段落。
这是一个段落。
jQuery last() 方法--返回被选元素的最后一个元素
$(document).ready(function(){
$("div p").last().css("background-color","yellow");
});
欢迎访问我的主页
这是 div 中的一个段落。
这是另外一个 div 中的一个段落。
这是一个段落。
jQuery eq() 方法--返回被选元素中带有指定索引号的元素
索引号从 0 开始,因此首个元素的索引号是 0 而不是 1。
$(document).ready(function(){
$("p").eq(1).css("background-color","yellow");
});
欢迎访问我的主页
菜鸟教程 (index 0).
http://www.runoob.com (index 1)。
google (index 2).
http://www.google.com (index 3)。
jQuery filter() 方法--匹配的元素会被返回
$(document).ready(function(){
$("p").filter(".url").css("background-color","yellow");
});
欢迎访问我的主页
菜鸟教程 (index 0).
http://www.runoob.com (index 1)。
google (index 2).
http://www.google.com (index 3)。
jQuery not() 方法--返回不匹配标准的所有元素
提示:not() 方法与 filter() 相反。
$(document).ready(function(){
$("p").not(".url").css("background-color","yellow");
});
欢迎访问我的主页
菜鸟教程 (index 0).
http://www.runoob.com (index 1)。
google (index 2).
http://www.google.com (index 3)。
推荐文章
评论可见,请评论后查看内容,谢谢!!!本文由 用户 于 2024-05-23 发布在 金钥匙,如有疑问,请联系我们。
本文链接:https://www.51969.com/post/18797283.html - li (父元素)
的后代。 元素是右边的 - 的子元素,同时是
的后代。两个
的后代。 元素是 - 元素是 的父元素,
- 元素是
发表评论