我需要的就像How can I open a link in the default web browser from an HTA?一样,但是链接位于iframe内的限制。
iframe在我们的服务器中加载页面。
想法:可以检测到iframe的重定向吗?因此我们会运行https://stackoverflow.com/a/185581/66372中的代码。怎么样?
更新1 需要说明的是:我们要解决的问题是,当用户点击任何链接时,它会在默认浏览器中打开。
类似于mplungjan的答案的一个选项是捕获iframe DOM中所有链接的click事件。是否有更通用的选项适用于iframe,文档或正文级别? (因此也适用于延迟加载和任何其他技巧)
答案 0 :(得分:2)
这样的事情,在具有提升权利的HTA中应该完全允许
window.onload=function() {
window.frames["iframe_in_this_document"].onload=function() {
var links = this.document.getElementsByTagName("a");
for (var i=0;i<links.length;i++) {
url = links[i].href;
if (url) links[i].onclick=function() {
var shell = new ActiveXObject("WScript.Shell");
shell.run(this.href);
return false;
}
}
}