<head>中<link>元素的Jquery选择器

Jul*_*oux 13 jquery dom

我们使用jQuery来解析一些HTML.然后我需要遍历该文档并找到一些元素.在我需要找到的<link>元素中,有元素.

这非常适合提取所有<a>元素:

$(string).find("a")
Run Code Online (Sandbox Code Playgroud)

但这不能提取<link>元素:

$(string).find("link")
Run Code Online (Sandbox Code Playgroud)

string参数是HTML内容(例如,在请求中接收).

知道为什么吗?(我想find这只适用于<body>元素).另外,关于如何实际提取这些<link>元素的任何想法?

Lig*_*ica 8

从您正在使用的功能的文档$(string)(这是功能jQuery( html, [ownerDocument] )):

传递复杂的HTML时,某些浏览器可能无法生成完全复制所提供的HTML源的DOM.如上所述,我们使用浏览器的.innerHTML属性来解析传递的HTML并将其插入到当前文档中.在此过程中,一些浏览器过滤掉某些内容,如<html>,<title><head>元件.结果,插入的元素可能不代表传递的原始字符串.

尽量不要使用jQuery来操作整个 HTML文档.

特别要注意,linkHTML的独立片段中的节点可以"找到".