Javascript元素标记名未定义
所以我对Javascript不是很在行,所以我会马上提出这个问题。话虽如此,在提出问题之前,我已经尽可能多地查阅了这个问题,但这些建议并没有解决我的问题。我最终尝试从与主页相同的域上的iframe窗口中提取所有链接。然后我想基本上搜索链接数组,将其与当前页面匹配,以触发对html代码的CSS修改(这部分还没有编码,仅供参考)。这里是我到目前为止的部分:旁注:确认程序在那里调试代码,并试图告诉我哪里失败了,我的查询返回了什么,当这完成时,它们显然不会停留。我感谢任何可能帮助我解决这个问题的建议Javascript元素标记名未定义,javascript,jquery,html,css,arrays,Javascript,Jquery,Html,Css,Arrays,所以我对Javascript不是很在行,所以我会马上提出这个问题。话虽如此,在提出问题之前,我已经尽可能多地查阅了这个问题,但这些建议并没有解决我的问题。我最终尝试从与主页相同的域上的iframe窗口中提取所有链接。然后我想基本上搜索链接数组,将其与当前页面匹配,以触发对html代码的CSS修改(这部分还没有编码,仅供参考)。这里是我到目前为止的部分:旁注:确认程序在那里调试代码,并试图告诉我哪里失败了,我的查询返回了什么,当这完成时,它们显然不会停留。我感谢任何可能帮助我解决这个问题的建议
//main是我试图搜索标签的iframe
document.getElementById(“main”).onload=function(){
确认(“测试”);
var main=document.getElementById(“main”);
var archors=main.contentWindow.document.getElementsByTagName('a');
确认(锚[1]);
用于(锚中的变量i){
确认(锚[i].getAttribute(“href”);
}
};
这样做是有道理的,我同意穆罕默德·优素福的观点。如果你可以使用,那么你应该这样做
$("#main").contents().find("a").each(function(element) {
// "each" will iterate through every a tag and inject them as the "element" argument
// visible in the scope of this anonymous function
});
编辑:
你必须包括
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
在引用$
变量的代码上方。使用jQuery还有其他方法,但这可能是最简单的方法。我已经为您创建了一个工作环境。我认为是代码在文件中的位置造成了问题
<iframe id="main" src="content_if.html"></iframe>
<script>
// main is the iframe that I'm trying to search for a tags
document.getElementById("main").onload = function() {
confirm("test");
var main = document.getElementById("main");
var anchors = main.contentWindow.document.getElementsByTagName('a');
confirm(anchors[1]);
for (var i in anchors) {
confirm(anchors[i].getAttribute("href"));
}
};
</script>
//main是我试图搜索标签的iframe
document.getElementById(“main”).onload=function(){
确认(“测试”);
var main=document.getElementById(“main”);
var archors=main.contentWindow.document.getElementsByTagName('a');
确认(锚[1]);
用于(锚中的变量i){
确认(锚[i].getAttribute(“href”);
}
};
您应该使用jQuery以跨浏览器的方式完成这项工作。在页面中包含jQuery
<script src="https://code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
跟着你做我喜欢你想做的事。。尽管我建议使用jquery而不是纯javascript。。祝你好运“修复此问题”-错误发生在哪里?确切的错误是什么?
for(锚中的var i)
还没有看到。同时共享html类型错误:未定义不是对象(评估“锚[1]”)。我知道这基本上是说我的对象还没有在页面中呈现,但我的代码在底部,所以这不应该发生…所以当我尝试此操作时,它只返回ReferenceError:Cannot find variable$,我完全明白为什么这是更好的选择,但由于某些原因,by data仍然没有被正确解析?嘿,请参阅我最近对此的编辑。干杯