javascript - 脚本的可见性包含在 IFRAME 中

标签 javascript html iframe include visibility

例如:

脚本.js:

function functionFromScriptJS() {
    alert('inside functionFromScriptJS');
}

iframe.html:

<html>
<head>
<script language="Javascript" src="script.js"></script>
</head>
<body>

<iframe>
  <body>
     <script language="JavaScript">
       functionFromScriptJS();
     </script> 
  </body> 
</iframe>

</body>
<html>

上面对 functionFromScriptJS() 的调用不起作用。

第一个猜测 parent.functionFromScriptJS() 也不起作用。

当包含不在 iframe 本身而是在父文档中时,是否可以从 iframe 访问这样的外部函数?

@Edit: 所以我的错误是我将文档放在 iframe 标签中,我应该将它放在一个单独的文件中并通过标签的 src 属性指定。在这种情况下,parent.functionFromScriptJS() 有效。

最佳答案

Iframe 不支持内联内容。您必须使用 src 属性来引用不同的文件。 <iframe> 的内部文本标记将显示给不支持 iframe 的浏览器。

例子:

<iframe src="someFile.html" width="100%" height="300px">
  <p>Your browser does not support iframes.</p>
</iframe>

加载页面后,您应该能够使用 parent.functionFromScriptJS(); 调用脚本

关于javascript - 脚本的可见性包含在 IFRAME 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/339935/

相关文章:

javascript - 使用 Socket.io 将套接字传递给 Node.js 中的模块

javascript - Vue.js 无法使用语义 UI 下拉菜单

Javascript Iframe 没有正确计算高度

javascript - ng-repeat 中的 Angular 设置 $sce

jquery - 使用 jQuery 从 iFrame 中的元素获取值

javascript - 根据表格中其他 <td> 的文本向 <td> 添加倒数计时器

JavaScript 正则表达式函数

javascript - ES6 模块和继承

javascript - Big w IE8 使用 Javascript 在插入符处插入文本

html - CSS - 当开始不是 1 时, "nth-child"相当于 "start"