Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/473.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检查网站isn';t工作不正常_Javascript - Fatal编程技术网

Javascript 检查网站isn';t工作不正常

Javascript 检查网站isn';t工作不正常,javascript,Javascript,我已经写了一个代码来每秒检查一个网站的页面,但是我认为我做了一些错误的事情,因为它只在第一次调用函数时才得到数字。之后,调用的每个其他函数都会一次又一次地得到相同的数字,即使实际页面上的数字发生了变化。我做错了什么 checkPage(); function checkPage() { var html = document.getElementsByTagName('html')[0]; var text = html.innerHTML; var matches = text.match

我已经写了一个代码来每秒检查一个网站的页面,但是我认为我做了一些错误的事情,因为它只在第一次调用函数时才得到数字。之后,调用的每个其他函数都会一次又一次地得到相同的数字,即使实际页面上的数字发生了变化。我做错了什么

checkPage();

function checkPage() {

var html = document.getElementsByTagName('html')[0];
var text = html.innerHTML;
var matches = text.match(/Numbers \(([0-9]+)\)/);
console.log(matches[0]);
setTimeout(function(){ checkPage() }, 1000);

}

尝试使用
setInterval(检查页面,1000)调用函数不在函数内部。

我查找了HTTP GET函数,现在它可以工作了

function httpGet(theUrl) {
var xmlHttp = new XMLHttpRequest();
xmlHttp.open( "GET", theUrl, false ); // false for synchronous request
xmlHttp.send( null );
return xmlHttp.responseText;
}

checkPage();
function checkPage() {
var text = httpGet("https://example.com");
var matches = text.match(/Numbers \(([0-9]+)\)/);
setTimeout(function(){ checkPage() }, 1000);
}

为什么页面的文本在加载后会发生变化?给我贴一个pleaseWorks:@j08691举个例子,如果一个网站上有100双鞋在打折,有人点击buy,剩下99双鞋,但是我的脚本只在第一次调用这个函数时得到鞋的数量。在这之后,无论剩下多少只鞋,它都会一次又一次地得到相同的数字。@ConstantinGroß是的,只要数字不变。假设你不拥有该页面并且该页面没有实时更新(即,你必须刷新页面以查看新文本),那么你应该考虑每n秒发出一次HTTP GET请求。