【问题标题】:Webforms application fails in IFrame when accessed by IE9IE9 访问时,Webforms 应用程序在 IFrame 中失败
【发布时间】:2013-07-07 02:06:57
【问题描述】:

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

我没有收到任何错误或访问被拒绝或任何其他可见的信息。阅读大量帖子后,我确定:

  • 两种文档类型是相同的——在我的例子中
  • 我在 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

【问题讨论】:

  • 一切都是 SSL 吗?您可以尝试将链接从 https://... 更改为 //...
  • @gilly3:您先生是个传奇!!!将所有链接更改为 http,嘿,一切正常。非常感谢。
  • 看来我说得太早了。我无意中在 IFrame 之外对其进行了测试,但它确实有效。但是在 IFrame 中(在 Joomla CMS 站点中)它不起作用。
  • 嗯,在它持续的时候成为一个传奇真是太好了。没有更多细节,很难猜测。

标签: c# iframe twitter-bootstrap webforms


【解决方案1】:

IE 不喜欢你的代码的一部分是 SSL,但不是全部。养成的一个好习惯是通过从链接中删除 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>

【讨论】:

猜你喜欢
  • 2012-01-10
  • 1970-01-01
  • 2016-03-29
  • 2012-05-06
  • 1970-01-01
  • 2020-06-07
  • 1970-01-01
  • 2021-04-23
  • 1970-01-01
相关资源
最近更新 更多