我有一个项目是用Django, Dojo和JS实现的。整个星期我都在为这个问题绞尽脑汁,但在网上找不到任何关于问题所在的提示。希望这里有人也遇到过这个问题,能对这个问题提出一些建议。
我有一个无序列表
- 类似如下:
`````
<ul>
<li><a target="displayArea" id="pre-select" href="foo.html>Foo</a></li>
<li><a target="displayArea" href="bar.html">Bar</a></li>
<li><a target="displayArea" href="baz.html">Baz</a></li>
</ul>
```
代码中的是目标iframe:
```
<iframe style="border: none;" name="displayArea" id="displayArea" width="100%" height="95%" title="Report Area"></iframe>
```
当我把鼠标移到"Foo"它像预期的那样工作,"显示在上面所示的iframe中。但是,如果我执行紧跟在
之后的脚本代码中:<script>
window.document.getElementById('pre-select').click();
</script>
"Foo"不显示在iframe中,而是短暂地出现在主机窗口框中,然后消失。我不确定为什么直接点击链接会有不同,因为它出现在
或者执行脚本<这就产生了"点击"以编程方式。>如有任何见解,不胜感激。
如问题描述中所述,当脚本
时,我希望链接出现在目标iframe中:<script>
window.document.getElementById('pre-select').click();
</script>
被执行,但它没有出现在iframe中。如果用鼠标点击链接,它会按预期工作。
我能够完成我所需要的通过添加一个onload到我的HTML,像这样:
<body onload="document.getElemenById('pre-select').click()">
这正是我所需要的,当用户不可避免地改变主意时,可以很容易地更改:)
感谢epascarello和markfila的帮助,为我指明了正确的方向。