我们有一个使用 ASP.NET Ajax 的 ASP.NET Web 应用程序。我们从 iPad 上的 Safari 中打开它。效果很好。
我们将其作为单独的图标保存到主屏幕上。我们添加了元标记,使其能够全屏加载,无需 Safari 的导航栏。效果很好。
后来,我们重新打开它,发现它已损坏。下面是渲染的 HTML 的一部分,显示了哪些内容不起作用。
<a id="ctl00_Header1_btnHome" class="Button" href="javascript:__doPostBack('ctl00$Header1$btnHome','')" style="display:inline-block;font-size:Medium;height:35px;width:130px;">Main Menu</a>
- 不应用内联样式。 (这些样式由 ASP.NET *.skin 文件自动插入。)
- 点击链接不起作用。
在启用开发人员工具的情况下,在常规 Safari 中重新打开页面,我发现 JavaScript 错误。
类型错误:表达式“Sys.WebForms”[未定义] 的结果不是对象。
据我所知,相关的 ScriptResource.axd 文件被缓存并且不会重新加载,或者在重新加载时,不会重新调用某些初始化事件。
注意:清除 Safari 的缓存即可完成此操作。有时,在浏览器中刷新也可以。关闭并重新加载主屏幕上的图标永远不起作用。
您之前解决过这个问题吗?
编辑:
我相信发生这种情况是因为我们正在查询 ScriptResource.axd 时使用的参数被网络服务器视为无效。因此,它会响应一个错误页面。我不明白为什么新的default.aspx会被刷新,但它会指向带有无效参数的ScriptResource.axd。
将其添加到 web.config (以禁用压缩)似乎可行。
<system.web.extensions>
<scripting>
<scriptResourceHandler enableCompression="false" enableCaching="true" />
</scripting>
</system.web.extensions>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)