读取、修改元素的html结构或者元素的文本内容是常见的DOM操作,jQuery针对这样的处理提供了2个便捷的方法.html()与.text()
.html()方法
获取集合中第一个匹配元素的HTML内容 或 设置每一个匹配元素的html内容,具体有3种用法:
注意事项:
.html()方法内部使用的是DOM的innerHTML属性来处理的,所以在设置与获取上需要注意的一个最重要的问题,这个操作是针对整个HTML内容(不仅仅只是文本内容)
.text()方法
得到匹配元素集合中每个元素的文本内容结合,包括他们的后代,或设置匹配元素集合中每个元素的文本内容为指定的文本内容。,具体有3种用法:
注意事项:
.text()结果返回一个字符串,包含所有匹配元素的合并文本
.html与.text的异同:
在代码编辑器中第37行填写相应代码
text
在代码编辑器中第44行填写相应代码
text
在代码编辑器中第50行填写相应代码
text
在代码编辑器中第56行填写相应代码
html
在代码编辑器中第62填写相应代码
text
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> <title></title> <link rel="stylesheet" href="imooc.css" type="text/css"> <script src="https://www.imooc.com/static/lib/jquery/1.9.1/jquery.js"></script> </head> <body> <h3>.html()与.text()</h3> <div class="left first-div"> <div class="div"> <a>:first-child</a> <a>第二个元素</a> <a>:last-child</a> </div> <div class="div"> <a>:first-child</a> <a>第二个元素</a> <a>:last-child</a> </div> </div> <h4>显示通过html方法获取到的内容</h4> <p></p> <h4>显示通过text方法获取到的内容</h4> <p></p> <script type="text/javascript"> //显示出html方法获取到的内容 //.html()是整个html文档结构 $('p:first').?( $(".first-div").html() ) </script> <script type="text/javascript"> //显示出text方法获取到的内容 //.text()是文本内容的合集 $('p:last').?( $(".first-div").text() ) </script> <script type="text/javascript"> //通过.text()方法替换文本内容 $(".left a:first").?('替换第一个a元素的内容') </script> <script type="text/javascript"> //通过.html()方法替换html结构 $(".left div:first").?('整个div的子节点都被替换了') </script> <script type="text/javascript"> //通过.text()的回调,获取原本的内容,修改,在重新赋值 $(".left a:first").?(function(idnex,text){ return '增加新的文本内容' + text }) </script> </body> </html>
.left { width: auto; height: 120px; } .left div { width: 150px; height: 70px; padding: 5px; margin: 5px; float: left; background: #bbffaa; border: 1px solid #ccc; } a,p{ display: block; }