其他人是否遇到过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”
关于sharepoint - Safari 7.1中的ASPMenu在SharePoint 2010中无法正确呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25936427/