jQuery HTML代码/文本
html([val|fn]) 返回值:String
取得第一个匹配元素的html内容。这个函数不能用于XML文档。但可以用于XHTML文档。
在一个 HTML 文档中, 我们可以使用 .html() 方法来获取任意一个元素的内容。
如果选择器匹配多于一个的元素,那么只有第一个匹配元素的 HTML 内容会被获取。
function(index, html) Function
此函数返回一个HTML字符串。接受两个参数,index为元素在集合中的索引位置,html为原先的HTML值。
返回p元素的内容。
jQuery 代码:
设置所有 p 元素的内容
jQuery 代码:
使用函数来设置所有匹配元素的内容。
jQuery 代码:
text([val|fn]) 返回值:String
val String 用于设定HTML内容的值
function(index, html) Function 此函数返回一个HTML字符串。接受两个参数,index为元素在集合中的索引位置,html为原先的HTML值。
返回p元素的文本内容。
jQuery 代码:
设置所有 p 元素的文本内容
jQuery 代码:
使用函数来设置所有匹配元素的文本内容。
jQuery 代码:
意思是指:获取ID为test的元素内的html代码。其中html()是jQuery里的方法
这段代码等同于用DOM实现代码:
直接获取、编辑内容
在jQuery中,主要是通过html()和text()两种方法来获取和编辑页面内容的。其中html()相当于获取节点的innerHTML属性,
添加参数html(text)时,则为设置innerHTML;而text()则用来获取元素的纯文本,text(content)为设置纯文本。
实例1:
jQuery代码:
HTML代码:
实例2:
jQuery代码:
HTML代码:
<p><b>文本</b>段 落<em>示</em>例</p>
实例3:获取选择框的文本
$().html(); //获得节点包含的信息
$().html(信息); //设置节点包含的内容
$().text(); //获得节点包含的\”文本字符串信息\”内容
$().text(信息); //设置节点包含的内容(有html标签就把\”><\”符号变为符号实体)
注意: DOM操作必须保住DOM节点必须存在, 当然也包括使用css样式display:none隐藏的DOM节点, 否则会导致js语法错误;
GoQuery – Go语言的jQuery
习惯了使用 jQuery 的 $(…) 语法来查询和操作 DOM 元素,那换种语言,用 Go 语言该怎么实现呢?来看看 goquery 吧!
HTML网页DOM树
goquery,是 github 上 PuerkitoBio 开源的 Go 语言库,代码仓库在 https://github.com/PuerkitoBio/goquery。goquery 是一个用于查询和操作 DOM 元素的库,并采用了尽可能与 jQuery 相似的语法,以降低学习难度和使用门槛。
Go语言
goquery 需要 Go 1.1 以上版本,使用 go get 直接安装:
目前的版本为 v1.5.1,依赖包括 net/html 和 CSS 选择器 cascadia。
goquery 主要使用了两个结构体 Document (文档) 和 Selection (选择)。Document 代表了一个解析之后的 HTML 文档,而 Selection 则代表了进行查询后得到的 DOM 结点集合。Document 的定义中嵌入了 Selection,故而 Document 可使用 Selection 的方法。
下面给出一个 goquery 的使用例子:
该例子对一个新闻类网站进行了解析,并获取每一条新闻的标题等文本信息。
我们首先使用 net/http 进行 HTTP 请求,得到目标网站的响应。然后,使用了goquery 的 NewDocumentFromReader 来从响应读取并解析得到一个 HTML 文档。NewDocumentFromReader 是这样定义的:
然后,使用 Selection 的 Find 方法进行查找,返回查询结果,对应 jQuery 中的 find 函数:
对于结果集合,使用 Selection 的 Each 方法进行遍历,对应 jQuery 中的 each 函数:
对于遍历的每一项,再次使用 Find 查找子元素,并利用 Text 方法获得元素的文本,对应 jQuery 的 text 函数:
goquery 使用 Go 语言实现了与 jQuery 尽可能相似的查询和操作语法,包括 CSS 选择语法和绝大部分的操作函数,方便熟悉 jQuery 的 Go 语言开发人员快速完成 HTML 文档的解析和查询操作。
goquery库方便了 Go 语言进行网页抓取和解析的工作,使得Go语言在该领域有了门槛较低、使用方便的工具。
goquery库目前已经历了数年的开发,代码质量较高,注释丰富,值得研究学习。
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。