当IE9访问时,Webforms应用程序在IFrame中失败

时间:2013-07-07 02:06:58

标签: c# iframe twitter-bootstrap webforms

我使用TwitterBootstrap构建了一个WebForms .NET应用程序。该应用程序托管在一个单独的域中,以实际使用它即可。 apps.mydomain.com/appurl。该应用程序通过IFrame“嵌入”自己域名的另一个网站www.someotherdomain.com。这适用于所有浏览器(包括其他版本的IE),但IE9在页面上停止响应的IE9除外。如果IE9直接用于apps.mydomain.com/appurl,那么它“正常”。

我没有错误或访问被拒绝或其他任何可见的。阅读了很多帖子后我确定了:

  • 两种doctypes都是一样的 - 就我而言
  • 我在web.config中尝试了<sessionState cookieless="true" mode="InProc"></sessionState><sessionState mode="InProc" customProvider="DefaultSessionProvider">,结果相同

使用的脚本库是:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.3.1/js/bootstrap.js" type="text/javascript"></script>
<script src="Scripts/jquery.ezpz_hint.js"></script>

如果有人有任何想法,我会很高兴听到他们,因为我用Google搜索了这个,似乎无法找到解决方案。此时我必须使用IFrame和IE9才能工作,所以我很想找到解决方案。 : - ]

TIA

1 个答案:

答案 0 :(得分:0)

当您的部分代码是SSL时,IE不喜欢它,但不是全部。进入的一个好习惯是通过从链接中删除http / https来使用scheme相对URL。如果URL以//开头,则将使用当前上下文的方案:

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.3.1/js/bootstrap.js" type="text/javascript"></script>
<script src="Scripts/jquery.ezpz_hint.js"></script>