我正在尝试从其他域获取HTML(例如Google)。我使用this library,我可以用它获取HTML:
jQuery(document).ready(function($) {
$.ajax({
url: 'http://google.fr',
type: 'GET',
success: function(res) {
$html = $(res.responseText);
}
});
});
res.responseText
返回的字符串包含所有HTML,但是当我执行$(res.responseText)
时,并不是所有标记,例如我无法通过{{1}获取标题}。我甚至尝试了函数$(res.responseText).find("title")
,我得到了相同的结果。为什么我的HTML没有正确解析?
答案 0 :(得分:1)
你能尝试这样的事吗?
https://jsfiddle.net/omsmvksg/
jQuery(document).ready(function($) {
$.ajax({
url: 'https://google.fr',
type: 'GET',
dataType : 'html',
success: function(res) {
console.log(res.responseText);
$html = $(res.responseText);
console.log($html.find("._yKg").length);
}
});
});
它会在下载的html中记录_yKg
类的良好计数。
答案 1 :(得分:1)
一切都按预期工作,但让我们创建一个假元素:
$html = $("<div />", {html: res.responseText});
$html.find("title"); // This would work.