jQuery基础知识03

本文深入探讨了jQuery中DOM操作的关键方法,包括获取和设置文本、HTML、属性及表单值,添加、删除和修改元素,以及CSS操作,如添加、删除和切换类。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DOM操作
1.jQuery DOM 操作


jQuery 中非常重要的部分,就是操作 DOM 的能力。
jQuery 提供一系列与 DOM 相关的方法,这使访问和操作元素和属性变得很容易。
DOM = Document Object Model(文档对象模型)DOM 定义访问 HTML 和 XML 文档的标准:“W3C 文档对象模型独立于平台和语言的界面,允许程序和脚本动态访问和更新文档的内容、结构以及样式。”

获得内容 - text()、html() 以及 val()


三个简单实用的用于 DOM 操作的 jQuery 方法:
text() - 设置或返回所选元素的文本内容
html() - 设置或返回所选元素的内容(包括 HTML 标记)
val() - 设置或返回表单字段的值
下面的例子演示如何通过 jQuery text() 和 html() 方法来获得内容:
实例
$("#btn1").click(function(){ alert(“Text: " + $(”#test").text()); }); $("#btn2").click(function(){ alert(“HTML: " + $(”#test").html()); });

尝试一下 »
下面的例子演示如何通过 jQuery val() 方法获得输入字段的值:
实例
$("#btn1").click(function(){ alert(“值为: " + $(”#test").val()); });

尝试一下 »

获取属性 - attr()


jQuery attr() 方法用于获取属性值。
下面的例子演示如何获得链接中 href 属性的值:
实例
KaTeX parse error: Expected '}', got 'EOF' at end of input: …ction(){ alert(("#runoob").attr(“href”)); });

prop()与attr()


对于 HTML 元素本身就带有的固有属性,在处理时,使用 prop 方法。
对于 HTML 元素我们自己自定义的 DOM 属性,在处理时,使用 attr 方法。
实例 1:
< a href=“https://www.runoob.com” target="_self" class=“btn”>菜鸟教程</ a>
这个例子里 < a> 元素的 DOM 属性有: href、target 和 class,这些属性就是 < a> 元素本身就带有的属性,也是 W3C 标准里就包含有这几个属性,或者说在 IDE 里能够智能提示出的属性,这些就叫做固有属性。处理这些属性时,建议使用 prop 方法。
< a href="#" id=“link1” action=“delete” rel=“nofollow”>删除< /a>
这个例子里 < a> 元素的 DOM 属性有: href、id 和 action,很明显,前两个是固有属性,而后面一个 action 属性是我们自己自定义上去的,< a> 元素本身是没有这个属性的。这种就是自定义的 DOM 属性。处理这些属性时,建议使用 attr 方法。
prop()函数的结果:
1.如果有相应的属性,返回指定属性值。
2.如果没有相应的属性,返回值是空字符串。
attr()函数的结果:
1.如果有相应的属性,返回指定属性值。
2.如果没有相应的属性,返回值是 undefined。
对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。
对于HTML元素我们自己自定义的DOM属性,在处理时,使用 attr 方法。
具有 true 和 false 两个属性的属性,如 checked, selected 或者 disabled 使用prop()

2.设置内容 - text()、html() 以及 val()


我们将使用前一章中的三个相同的方法来设置内容:
text() - 设置或返回所选元素的文本内容
html() - 设置或返回所选元素的内容(包括 HTML 标记)
val() - 设置或返回表单字段的值
下面的例子演示如何通过 text()、html() 以及 val() 方法来设置内容:
实例
$("#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():
实例
$("#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 < b>world!</ b> (index: " + i + “)”; }); });

设置属性 - attr()


jQuery attr() 方法也用于设置/改变属性值。
可以通过改变class,来实现样式改变的效果
下面的例子演示如何改变(设置)链接中 href 属性的值:
实例
$(“button”).click(function(){ $("#runoob").attr(“href”,“http://www.runoob.com/jquery”); });

尝试一下 »
attr() 方法也允许您同时设置多个属性。
下面的例子演示如何同时设置 href 和 title 属性:
实例
$(“button”).click(function(){ $("#runoob").attr({ “href” : “http://www.runoob.com/jquery”, “title” : “jQuery 教程” }); });

attr() 的回调函数


jQuery 方法 attr(),也提供回调函数。回调函数有两个参数:被选元素列表中当前元素的下标,以及原始(旧的)值。然后以函数新值返回您希望使用的字符串。
下面的例子演示带有回调函数的 attr() 方法:
实例
$(“button”).click(function(){ $("#runoob").attr(“href”, function(i,origValue){ return origValue + “/jquery”; }); });

3.添加新的 HTML 内容


我们将学习用于添加新内容的四个 jQuery 方法:
append() - 在被选元素的结尾插入内容
prepend() - 在被选元素的开头插入内容
after() - 在被选元素之后插入内容
before() - 在被选元素之前插入内容

jQuery append() 方法


jQuery append() 方法在被选元素的结尾插入内容(仍然该元素的内部)。
实例
$(“p”).append(“追加文本”);

jQuery prepend() 方法
jQuery prepend() 方法在被选元素的开头插入内容。
实例
$(“p”).prepend(“在开头追加文本”);

通过 append() 和 prepend() 方法添加若干新元素
在上面的例子中,我们只在被选元素的开头/结尾插入文本/HTML。
不过,append() 和 prepend() 方法能够通过参数接收无限数量的新元素。可以通过 jQuery 来生成文本/HTML(就像上面的例子那样),或者通过 JavaScript 代码和 DOM 元素。
在下面的例子中,我们创建若干个新元素。这些元素可以通过 text/HTML、jQuery 或者 JavaScript/DOM 来创建。然后我们通过 append() 方法把这些新元素追加到文本中(对 prepend() 同样有效):
实例
function appendText() { var txt1=“

文本。

”; // 使用 HTML 标签创建文本 var txt2=$("
").text(“文本。”); // 使用 jQuery 创建文本 var txt3=document.createElement(“p”); txt3.innerHTML=“文本。”; // 使用 DOM 创建文本 text with DOM $(“body”).append(txt1,txt2,txt3); // 追加新元素 }
jQuery after() 和 before() 方法
jQuery after() 方法在被选元素之后插入内容。
jQuery before() 方法在被选元素之前插入内容。
实例
$(“img”).after(“在后面添加文本”); $(“img”).before(“在前面添加文本”);

通过 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); // 在图片后添加文本 }

4.删除元素/内容


如需删除元素和内容,一般可使用以下两个 jQuery 方法:
remove() - 删除被选元素(及其子元素)
empty() - 从被选元素中删除子元素

jQuery remove() 方法


jQuery remove() 方法删除被选元素及其子元素。
实例
$("#div1").remove();

jQuery empty() 方法


jQuery empty() 方法删除被选元素的子元素。
实例
$("#div1").empty();

过滤被删除的元素
jQuery remove() 方法也可接受一个参数,允许您对被删元素进行过滤。
该参数可以是任何 jQuery 选择器的语法。
下面的例子删除 class=“italic” 的所有

元素:
实例
$(“p”).remove(".italic");

5.jQuery 操作 CSS


jQuery 拥有若干进行 CSS 操作的方法。我们将学习下面这些:
addClass() - 向被选元素添加一个或多个类
removeClass() - 从被选元素删除一个或多个类
toggleClass() - 对被选元素进行添加/删除类的切换操作
css() - 设置或返回样式属性

实例样式表
下面的样式表将用于本页的所有例子:
.important { font-weight:bold; font-size:xx-large; } .blue { color:blue; }

jQuery addClass() 方法


下面的例子展示如何向不同的元素添加 class 属性。当然,在添加类时,您也可以选取多个元素:
实例
$(“button”).click(function(){ $(“h1,h2,p”).addClass(“blue”); $(“div”).addClass(“important”); });

您也可以在 addClass() 方法中规定多个类:
实例
$(“button”).click(function(){ $(“body div:first”).addClass(“important blue”); });

jQuery removeClass() 方法


下面的例子演示如何在不同的元素中删除指定的 class 属性:
实例
$(“button”).click(function(){ $(“h1,h2,p”).removeClass(“blue”); });

jQuery toggleClass() 方法


下面的例子将展示如何使用 jQuery toggleClass() 方法。该方法对被选元素进行添加/删除类的切换操作:
实例
$(“button”).click(function(){ $(“h1,h2,p”).toggleClass(“blue”); });

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值