还有其他人遇到过 Mac 和 iOS8 上最新版本的 Safari 7.1 破坏 SharePoint 2010 中 ASPMenu 控件的问题吗? ASPMenu 之前工作正常,但现在更新后它决定错误地呈现内容。我尝试设置 Page.ClientTarget = "uplevel",并修改 compat.browser 文件以包含适用于 Safari 的适配器“System.Web.UI.WebControls.Menu”,但这两个选项都无法帮助解决问题。
有人可以帮忙吗?在 Safari 更新之前,菜单工作得很好。谢谢!
最终弄清楚问题是什么。过去,服务器在 Safari 中看到的浏览器 ID 是“Safar1Plus”。这与 compat.browser 文件中列出的条目相关:
<browser id="Safari2" parentID="Safari1Plus">
<controlAdapters>
<adapter controlType="System.Web.UI.WebControls.Menu" adapterType="" />
</controlAdapters>
</browser>
Safari 7.1 不再与该浏览器 ID 绑定,现已更新为“Safari60”。我通过在自定义 SharePoint 页面上用 javascript 执行一个简单命令发现了这一点:
alert("<%=Request.Browser.Id %>");
这告诉我服务器看到的新浏览器 ID。现在返回的报告为“Safari60”。然后,我返回到 Web 应用程序下的 compat.browser 文件,添加一个新浏览器并引用新的浏览器 ID:
<browser refID="Safari60">
<controlAdapters>
<adapter controlType="System.Web.UI.WebControls.Menu" adapterType="" />
</controlAdapters>
</browser>
当我用这个新添加的内容保存 compat.browser 文件后,Safari 7.1 现在很高兴并像过去一样呈现 ASPMenu。希望这有帮助!
SP 浏览器定义文件的默认位置为“C:\Inetpub\wwwroot\wss\VirtualDirectories\\App_Browsers\compat.browser”
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)