2014-09-19 37 views
10

SharePoint 2010'da bir ASPMenu denetimini sonlandıran, Mac ve iOS8 üzerinde Safari 7.1'in en yeni sürümünde başka herhangi bir sorunla karşılaştı mı? ASPMenu elden önce iyi çalıştı, ancak şimdi güncellemeden sonra içeriği yanlış bir şekilde oluşturmaya karar verdi. Safari için "System.Web.UI.WebControls.Menu" bağdaştırıcısını eklemek için compat.browser dosyasını değiştirmenin yanı sıra Page.ClientTarget = "uplevel" ayarlamayı denedim, ancak hiçbiri sorunu düzeltmeye yardım etmiyor.Safari'de ASPMenu 7.1 SharePoint 2010'da Düzgün Şekilde Sunulmuyor

Herkes yardımcı olabilir mi? Menü, Safari güncellemesinden önce tamamen iyi çalıştı. Teşekkürler!

+0

Bu SharePoint 2007 yılında aynı sorunu giderir dikkati çekiyor Safari ile birlikte 6.2. Bunun, 2007'de silinen bir çalışma olduğunu belirten bir cevap vardı. Bu cevabı görmemiş olsaydım, SP 2007 ile olan meseleye bir çözüm bulamazdım. – stoj

cevap

16

Sorunun ne olduğunu anlamaya karar verdim. Geçmişte, sunucunun Safari için göreceği tarayıcı kimliği "Safar1Plus" idi. Bu tarayıcı kimliğine

<browser id="Safari2" parentID="Safari1Plus"> 
    <controlAdapters> 
     <adapter controlType="System.Web.UI.WebControls.Menu" adapterType="" /> 
    </controlAdapters> 
</browser> 

Safari 7.1 artık bağlar ve artık "Safari60" için güncellendi: Bu listelendiği gibi compat.browser dosyasındaki girişi ile ilişkilidir. Benim özel SharePoint sayfasında javascript basit komutu yaparak bu öğrendim:

alert("<%=Request.Browser.Id %>"); 

Bu bana sunucu görür yeni bir tarayıcı kimliğini anlattı. Şimdi "Safari60" olarak geri bildirildi. O zaman benim web uygulaması altında compat.browser dosyasına geri döndü ve yeni bir tarayıcı eklendi ve yeni bir tarayıcı kimliğini başvurulan: Bu yeni eklenmesiyle compat.browser Dosyayı kaydettikten sonra

<browser refID="Safari60"> 
    <controlAdapters> 
     <adapter controlType="System.Web.UI.WebControls.Menu" adapterType="" /> 
    </controlAdapters> 
</browser> 

, Safari 7.1 şimdi oldu ASPMenu'yu geçmişte olduğu gibi mutlu etmek ve işlemek. Umarım bu yardımcı olur!

SP tarayıcı tanım dosyasının varsayılan konumu olan “C: \ Inetpub \ wwwroot \ wss \ VirtualDirectories \\ App_Browsers \ compat.browser”

+0

Bu harika bir cevap. Bunun neden olduğu hakkında daha fazla bilgi için (ve iOS 8'de görebileceğiniz diğer konularda), http://stackoverflow.com/a/25979199/3486353 de gerçekten yararlıdır. –