我正在使用 jQuery 和 ajax 来获取远程网页。如果您将此网页加载到浏览器中,它会正常加载,但在大约 100 毫秒后会显示另一个表示计数器的元素。此计数器插入特定位置并具有特定类。这是这个地方的 HTML:
<span class="unreadcount">1</span>
我正在尝试为 chrome 制作一个插件,它需要这个值。问题是该值在页面加载后不可用,但我必须等待从页面到服务器的请求(未读计数)完成,然后再处理页面的 HTML 以获得我想要的值。
有什么办法可以用 jQuery 做到这一点?我正在使用以下代码来获取 HTML 页面:
$.ajax({
async: false,
cache: false,
type: 'GET',
dataType: 'html',
url: 'https://somesite.com/index.php',
success: function(data1) {
var descNode = document.createElement("div");
descNode.innerHTML = data1;
var unreadcount = descNode.getElementsByClassName("unreadcount");
/*process unreadcount etc*/
},
error: function () {
// something went wrong with the request
error_occurred();
return;
}
});
不幸的是,每次 unreadcount.length 都是 0,我注意到计数器没有与页面一起加载,而是在不久之后加载。
在处理页面之前如何等待计数器加载?