下面是我试图在javascript中使用DOM遍历的一些帧的代码片段。我可以在FF和IE中使用document.getElementById('raiseConfirm').click()
。它不适用于野生动物园。我已经尝试了很多不同的东西来尝试使用ID raiseConfirm到达锚点。看起来好像document.getElementById()
在这种情况下找不到此框架中的任何元素。我尝试了window.document
,self.document
,contentWindow
,contentDocument
,我尝试过命名这样的框架window.frames['gvdd'].document
,当我测试这个时,文档是一个对象并且包含其中的内容,但是一旦我尝试在其上使用函数getElementById()
,它就会返回undefined
或null
。
有人能指出我正确的解决方案吗?
<form method="POST"
action="somescript.asp?CMD=POST&TODO=TRUE2"
id="FORMSV2DISPLAY"
name="FORMSV2DISPLAY">
<a id="raiseConfirm" href="#divConfirm" class="nyroModal">HERE IT IS</a>
<div id="divConfirm" style="display:none;">…</div>
答案 0 :(得分:1)
您可以使用jquery:
$('#raiseConfirm')
它肯定适用于所有浏览器。 那是jquery的魔力:)
如果你想附加点击事件:
$(document).ready(function () {
$("#raiseConfirm").click(doSomenthing);
});
var doSomenthing = function () {
/* Something I do here */
}
答案 1 :(得分:1)
之前我曾试着这么说,但是很奇怪。我能够使用JQuery解决这个问题,这就是我所做的。
$("#raiseConfirm").trigger("click");
答案 2 :(得分:1)
document.getElementById()在Safari中不起作用。相反,你需要使用document.all ... 因此,JQuery进入了所有浏览器都支持的图片。这可能是Javascript和JQuery在哪里使用的主要区别。
答案 3 :(得分:0)
我在JSFiddle中试过这个。如果没有jQuery,我无法在Safari中使用它。