如何在 JavaScript 中使用 jQuery 获取 HTML 元素中的链接?

这个JavaScript和jQuery的操作啊,我以前也懵过,不过现在来说说,咱们得先引入jQuery库,就像这样子:
[xss_clean][xss_clean]
然后呢,咱们得用jQuery选择器选咱们的HTML元素,比如说,想要所有标签,就这么写:
javascript var links = $('a');
接下来,咱们得提取这些链接的属性,比如href,这个操作有点绕,得用.map()方法:
javascript var hrefs = links.map(function() { return $(this).attr('href'); }).get();
结果啊,hrefs就变成了一个数组,里面有所有链接的地址,然后咱们可以怎么着,打印出来看看:
javascript console.log(hrefs);
不过,这里有个小细节,咱们得确保DOM都加载完了才能执行这些操作,所以得用$(document).ready():
javascript $(document).ready(function() { // ...咱们之前的代码 });
要是你的链接有特殊结构,选个更精确的选择器,比如$('ul > li > a')。

动态内容啊,有时候链接是后来才加载的,那就得用事件委托或者等加载完再操作。

还有个方法,如果你是从HTML字符串解析链接,而不是直接操作DOM,你先把字符串变成jQuery对象:
javascript var String = '
Link1 Link2
'; var links = $(String).find('a').map(function() { return $(this).attr('href'); }).get();
console.log(links);
总结一下,用jQuery获取链接,主要是选对元素,提取属性,结果转数组。
这个方法对付复杂HTML挺有用的,比正则表达式简单多了。

jquery 获取元素span的值

哎哟喂,这jQuery的.text和.用法你写得太官方了,听不出人话啊。
来来来,我给你唠唠嗑。

就说上周吧,我在上海搞活动,有个客人问我为啥选span的时候,用.text()和.()结果不一样。
我一看,哦豁,人家那个span里面不光有文字,还有个链接呢。

你想想啊,如果你用.text(),它不管你span里面是啥,把所有能看到的文字都给抠出来,就像用手机相机拍个照,啥都给你照下来了。
比如我写个我是文本,还有个链接,用$.text()得到的就是"我是文本,还有个链接"这串字,链接标签都没了。

但你要是用.(),它就只看第一个span里面最顶层的HTML代码。
那上面例子里的,$.()得到的就是整个我是文本,还有个链接这一坨代码,连a标签都给你带上了。

所以说啊,你想搞纯文本就用.text(),要是有可能span里嵌套了别的HTML元素,想保留结构就用.()。
这俩方法对付普通文本或者简单HTML都挺好使。

不过话说回来,如果你那span特别多,比如一页几十个,你用.text()或者.()直接干所有span,那浏览器可能要卡一下。
这时候我一般会加上更精确的选择器,比如$('mySpecificSpan').text(),这样只处理那个特定的span,效率高点。
或者用.each()循环遍历,哪个span需要处理就单独拎出来。

反正你看着办,没坏处。

jquery怎样获取一个元素下面相同子元素的个数?

这就是坑。
别信。
别这么干。