我想要做的就是寻找,是文字 只是你! 或 这不仅仅是你! 在容器ID中:'<在isup.me/echelonservices.co.uk的结果页面的源代码中div id =“container”> 。
我现在已经找到了一种方法,但是无法将Java指向正确的站点。我所做的是使用以下网址: isup.me/echelonservices.co.uk 。但是,我在这方面遇到了问题。有人可以告诉我使用Javascript或其他可以使用的脚本源的方法,而无需从Web服务器托管网页。所以从本地客户端计算机运行网页。
这是我上次尝试的最后一次尝试,到目前为止惨遭失败:
<script type="text/javascript">
//Specify where the sctipt should be running the code against.
window.location.protocol = "http"
window.location.host = "isup.me/echelonservices.co.uk"
//Look for the Class ID and output to a variable.
element = document.getElementById('container');
var Status = element.textContent || element.innerText;
//If the "Status" says: UP write UP, DOWN write DOWN and anything else write Status could not be determined!
if (Status=="UP") {document.write('<div style="color:#00BB00;font-family:Arial;font-weight:bold">UP</div>')}
else {if (Status=="DOWN") {document.write('<div style="color:#FF0000;font-family:Arial;font-weight:bold">DOWN</div>')}
else {document.write('<div style="color:#EDA200;font-family:Arial;font-weight:bold">WARNING:<br>Status could not be determined!</div>')};};
</script>
答案 0 :(得分:1)
幸运的是,你所做的事情是不可能的。 JavaScript无法从另一个域读取数据(除非该域明确设置为允许它) - 即使该域是 localhost 。否则,就有可能创建一个网页,在隐藏的IFrame中加载Facebook并窃取大量机密用户数据。
您需要做的是使用您选择的服务器端编程语言(PHP,Java,C#等)在您自己的Web服务器上实现相同的逻辑。您将向所需服务器发起HTTP请求,相应地解析结果,然后将结果回显给客户端。基本上,您正在为该服务创建代理。
如果您尝试在不使用Web服务器的情况下尝试执行此操作,您可能需要检查另一种客户端技术,例如WPF,Air,WinForms,Java等。< / p>
答案 1 :(得分:0)
如果您使用的是Firefox,则不支持element.innerText
。请改用element.innerHTML
。此外,我不确定这是否是一个错字,但你最后else
声明附近有一个额外的结束括号。我建议您为if
语句使用不同的语法,使它们更整洁:
if (Status=="UP") {
document.write('<div style="color:#00BB00;font-family:Arial;font-weight:bold">UP</div>')
}
else if (Status=="DOWN"){
document.write('<div style="color:#FF0000;font-family:Arial;font-weight:bold">DOWN</div>')
}
else {
document.write('<div style="color:#EDA200;font-family:Arial;font-weight:bold">WARNING <br>Status could not be determined!</div>')
}