iframe和JavaScript在不同的页面上

时间:2015-04-04 09:39:37

标签: javascript php jquery html iframe

如果我要有index.php这样的网页,然后包含iframe,但iframe缺少index.php文件中包含的JavaScript; JavaScript会激活iframe上的JavaScript函数,还是需要它们在同一页面上?

示例:

的index.php:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script type="text/javascript" src="http://example.com/js/jquery.jplayer.min.js"></script>

包含以下两个代码,而iframe需要它们,但没有在页面上列出。

1 个答案:

答案 0 :(得分:1)

主页面和iframe的JavaScript环境是分开的,但如果它们来自same origin,它们可以相互通信。

这意味着您有两种选择:

  1. 在主页和iframe的HTML中包含脚本;这是最简单的

  2. 如果它们在同一个原点,主页面可以在iframe的环境中使其功能可用(假设functionName是主页面中的一个功能):

    theIframe.contentWindow.functionName = functionName;
    

    与iframe共享functionName(使其成为iframe中的全局函数)。请注意,functionName仍然在主页面的环境中,因此,例如,在该函数的代码中,document将引用主页的文档,而不是iframe的文档。