JavaScript DOM依赖于视口导致奇怪的结果
JavaScript DOM Dependent on Viewport Causing Strange Results
我试图找到从HTML文档中拉出的另一个字符串中的字符串的出现。该页面是一个SNMP监视器,但是我们在过去使用CTRL + F时遇到了一些问题,因为它只想在浏览器的当前视图中找到字符串。我试图绕过这个,而不必手动查看的东西是写一个脚本。
这里的问题是,docHTML变量似乎只能保存这么多数据,而其他任何内容都被截断了。我在Stack Overflow上查看了一下,发现我的字符串大小明显小于其他人尝试过的,所以这应该不是问题。
在'ipArray'变量中的所有IP地址确实存在于不同位置的页面上,并且在docHTML变量中,当我自己查看它时。当我在页面的不同点(视口依赖)运行doSearch函数时,它会给我不同的结果。
我真的不知道这里出了什么问题,因为代码有时工作,而不是其他时候。我的目标是让代码浏览整个页面,找到所有缺失的IP并将它们添加到数组中,以便我们可以继续并添加它们,而不是将电子表格上的490个IP与监控实用程序中的490个IP进行比较。
提前感谢!
var docHTML = document.documentElement.outerHTML;
var missing = [];
function doSearch(text) {
if (docHTML.search(text) == -1){
missing.push(text);
}
}
var ipArray = [
"192.168.64.236",
"192.168.64.237",
"192.168.64.238",
"192.168.64.10",
"192.168.64.11",
"192.168.64.12",
"192.168.65.40",
"192.168.65.47"
];
var Total = ipArray.length;
for(i=0;i<Total;i++){
doSearch(ipArray[i]);
}
console.log("Missing IP's: " + (Total - missing.length));
console.log(missing);
这是解决方案,没有太多的变化,只是调整您的日志记录语句。你印的是"失踪人数"这是错的。我们需要的是缺失的计数-
var docHTML = document.documentElement.outerHTML;
var missing = [];
function doSearch(text) {
if (docHTML.search(text) == -1){
missing.push(text);
}
}
var ipArray = [
"69.171.224.11",
"199.59.149.230",
"174.121.194.34",
"209.200.154.225",
"69.174.244.50",
"67.201.54.151"
];
var Total = ipArray.length;
console.log(Total);
for(i=0;i<Total;i++){
doSearch(ipArray[i]);
}
console.log("Missing IP's: " + (missing.length)); /***HERE***/
console.log(missing);
除此之外,整个代码如预期的那样为我工作。让我知道还有什么问题。乐意效劳
代码按预期工作。问题恰好出在它运行的SNMP监视器上。页面上的所有内容似乎都是在滚动时通过POST请求加载的。它似乎在之前和之后抓住了一些,这就是为什么我能够在代码中看到它,而不是在执行时。
相关文章:
- Angular JS根据搜索结果和点击事件更新DOM元素
- 防止多次显示弹出窗口.Ajax添加结果已在DOM中注册
- 如何在 javaScript 中使用 DOM 自动递增编号结果
- 当我尝试两个 DOM 中的 get 元素时,HTML 和 Xpath 结果未定义
- 如何使用 HTML 5 日期输入增加月份 - 将结果输出到 DOM
- 试图理解为什么添加到DOM中的AJAX对象返回未定义的结果
- QUnit:任何不在网站DOM树中输出结果的官方解决方案
- 为什么使用jQuery设置属性会得到与使用DOM方法设置不同的结果呢
- InvalidStateError:XPath结果出现DOM异常11
- 在所有类型的DOM等待机制中,将AMD javascript计算为库中的非AMD结果是未定义的
- 如何将URL调用的HTML结果附加到DOM中
- 遍历DOM,然后连接结果文本值
- CSS过渡作为jQuery DOM操作的结果
- 从带有DOM的JavaScript函数返回不必要的结果
- JavaScript DOM依赖于视口导致奇怪的结果
- 对HTML应用DOM操作并保存结果
- 根据SQL查询表结果为Textarea创建DOM
- SVG的角度替换指令(结果在DOM中,但未显示)
- dom events - 如何将 JavaScript 按钮操作的结果复制到另一个 html 页面上
- Selenium将dom元素传递给JQuery,并将结果返回给c#