0

我有一个页面要添加为动态 CRM 表单中的Web 资源。我在 iframe 之外开发了代码,它在 IE (9+) 和 Firefox 中独立工作,直接导航到资源 URL。(已编辑)

经过一天的独立开发和现在,回来测试嵌入在 CRM 中的代码;作为 CRM 表单的一部分加载时,没有任何脚本运行。我已经通过在 javascript 加载的每个阶段添加小警报脚本(如下所示)对此进行了测试,现在这些脚本可以在早至 IE5 的所有浏览器中使用,但在 CRM 表单上的 IFrame 中加载时则不行:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
   <head>        
       <script type="text/javascript">
           alert("1");
       </script>
       <!-- etc.. -->

我还尝试创建一个本地页面以将我的页面加载到 iframe 中,该 iframe 也可以按预期工作:

<!DOCTYPE html>
<html>
    <head>
        <title>Iframe test</title>
    </head>
    <body style="background: Red;">
        <h1>Hello, World!</h1>
        <iframe width="500" height="500" src="http://server:5555/...">
        </iframe>
    </body>
</html>

因为这个问题只发生在 IFrame 中,所以我已经没有如何调试它的想法了。我最好的猜测是问题是与父页面中的代码冲突,但即便如此,我希望我在 html 文件入口点的警报会运行。

我不确定昨天代码在什么时候停止工作并且很遗憾没有备份。我会很感激任何关于为什么在 IFrame 中放弃脚本的猜测,关于我可以尝试的任何额外调试步骤的提示......或解决方案 =p。

4

2 回答 2

1

在解决问题的表单上关闭了 Web 资源属性中的“限制跨框架脚本”。

感谢所有的帮助!

于 2013-04-30T14:23:25.313 回答
0

您是否尝试将其添加为 Web 资源而不是 iframe?可能会出现一些 xss 安全性。Web Resource 应该克服它。Web 资源还具有其他优点(依赖关系感知等)。

于 2013-04-30T11:10:10.000 回答