Javascript 如何使用函数打开iframe中的链接?
我有一个iframe,它加载一个列表,其中包含来自另一个域的链接,我不想更改链接地址,但我想更改它们,以便它们获得如下所示的onclick函数。 这可能吗 iframe中的链接如下所示Javascript 如何使用函数打开iframe中的链接?,javascript,iframe,Javascript,Iframe,我有一个iframe,它加载一个列表,其中包含来自另一个域的链接,我不想更改链接地址,但我想更改它们,以便它们获得如下所示的onclick函数。 这可能吗 iframe中的链接如下所示 <div class="flip-entry" id="entry-1ERKvXXUHZHYAA9JLoOz4aau7Y0rTc14h2HucC0CulAM" tabindex="0" role="link"> <div class="flip-entry-info"> <a hre
<div class="flip-entry" id="entry-1ERKvXXUHZHYAA9JLoOz4aau7Y0rTc14h2HucC0CulAM" tabindex="0" role="link">
<div class="flip-entry-info">
<a href="https://docs.google.com/drawings/d/1ERKvXXUHZHYAA9JLoOz4aau7Y0rTc14h2HucC0CulAM/edit?usp=drive_web" target="_blank">
<div class="flip-entry-title">Drawings demo</div>
</a>
</div>
</div>
<a href="#" onclick="openInAppBrowser('https://docs.google.com/drawings/d/1ERKvXXUHZHYAA9JLoOz4aau7Y0rTc14h2HucC0CulAM/edit?usp=drive_web');">
我想更改iframe中的所有链接,使它们看起来像这样
<div class="flip-entry" id="entry-1ERKvXXUHZHYAA9JLoOz4aau7Y0rTc14h2HucC0CulAM" tabindex="0" role="link">
<div class="flip-entry-info">
<a href="https://docs.google.com/drawings/d/1ERKvXXUHZHYAA9JLoOz4aau7Y0rTc14h2HucC0CulAM/edit?usp=drive_web" target="_blank">
<div class="flip-entry-title">Drawings demo</div>
</a>
</div>
</div>
<a href="#" onclick="openInAppBrowser('https://docs.google.com/drawings/d/1ERKvXXUHZHYAA9JLoOz4aau7Y0rTc14h2HucC0CulAM/edit?usp=drive_web');">
我想先用javascript实现这一点,但也可以使用jQuery
谢谢你的意见 如果可以控制iframe,可以直接在iframe中添加JavaScript。如果您没有控制权,但位于域内,则可以从包含iframe的父级运行JavaScript。如果是另一个领域,你什么都不能做 我将使用以下片段:
var opena = function(event) {
openInAppBrowser(this.href);
event.preventDefault();
return false; // For jQuery, just in case
};
var as = document.querySelectorAll("a");
for (var i = 0, a; a = as[i]; i++) {
a.addEventListener("click", opena);
}
文档中的文档。查询选择全部(“a”)
需要是您希望链接处理的文档,在本例中是iframe文档。有很多方法可以访问iframe文档,只需使用更适合您的代码的方法即可:谢谢Jorge。我可以控制iframe,它在我的域中,但不是我在其中加载的页面。我得检验一下你的建议,那你就什么都不能做了。当我指的是对iframe的控制时,我指的是iframe内容(您在其中加载的页面)。浏览器出于强烈的安全原因阻止了这种行为。如果您的页面是domain.com,并且您正在加载一个包含domain2.com的iframe,则域是不同的,因此安全策略将触发。@ClaesGustavsson忘记标记您以获取通知。