Avatar billede hulla Novice
13. august 2010 - 11:57 Der er 5 kommentarer og
1 løsning

ASP.NET Menu control og safari/chrome

Hej

Jeg har et problem med en ASP.NET menu control som virker fint i alle browsere, men ikke med safari og chrome.
Dvs. at ved enhver opdatering af siden (F5) så ser siden fin ud, men lukker jeg browseren og åbner siden på ny er menuen slet ikke stylet. (alle punkter står under hinanden i venstre side)

Det tyder på at det har at gøre med cache elementer i browserne, nogen der har en ide?


PS: Den her slags løsninger har jeg forsøgt:

if (Request.UserAgent.IndexOf("AppleWebKit") > 0)
    {
        Request.Browser.Adapters.Clear();
    }
Avatar billede jokkejensen Novice
13. august 2010 - 13:27 #1
uden et link til fejlen eller noget kode der viser problem stilling, er det umuligt at svare på.

Umiddelbart har det intet med .Net at gøre. Nok mere noget positionering, og hvorfor skulle det hjælpe at fjerne client caching ?!? det tvinger vel browsers til at anmode om filen hver gang.

/J
Avatar billede hulla Novice
13. august 2010 - 13:59 #2
Hej jokkejensen

Stylen til menu'en ser sådan ud:

><style type="text/css">
.ctl00_CntTop_MainMenu1_MainMenu_0 { background-color:white;visibility:hidden;display:none;position:absolute;left:0px;top:0px; }
.ctl00_CntTop_MainMenu1_MainMenu_1 { text-decoration:none; }
.ctl00_CntTop_MainMenu1_MainMenu_2 {  }
.ctl00_CntTop_MainMenu1_MainMenu_3 { border-style:none; }
.ctl00_CntTop_MainMenu1_MainMenu_4 {  }
.ctl00_CntTop_MainMenu1_MainMenu_5 { border-style:none; }
.ctl00_CntTop_MainMenu1_MainMenu_6 {  }
.ctl00_CntTop_MainMenu1_MainMenu_7 {  }
.ctl00_CntTop_MainMenu1_MainMenu_8 { border-style:none; }
.ctl00_CntTop_MainMenu1_MainMenu_9 {  }
.ctl00_CntTop_MainMenu1_MainMenu_10 { border-style:none; }
.ctl00_CntTop_MainMenu1_MainMenu_11 {  }
.ctl00_CntTop_MainMenu1_MainMenu_12 { border-style:none; }
.ctl00_CntTop_MainMenu1_MainMenu_13 {  }
</style>

Menuen ser sådan ud:

<table cellpadding="0" cellspacing="0" border="0"> <tr> <td style="padding-top:1px;"> <div class="home" onclick="java script:location.href='/';">&nbsp;</div> </td> <td> <a href="#ctl00_CntTop_MainMenu1_MainMenu_SkipLink" style="display:inline-block;height:1px;width:1px;"><img src="/WebResource.axd?d=lLrOROJkbsiwb7RQh10cXA2&amp;t=633689314978410071" alt="Skip Navigation Links" style="border-width:0px;" /></a><div id="ctl00_CntTop_MainMenu1_MainMenu"> <span class="MenuItem ctl00_CntTop_MainMenu1_MainMenu_4"><a class="ctl00_CntTop_MainMenu1_MainMenu_1 MenuItem ctl00_CntTop_MainMenu1_MainMenu_3" href="java script:__doPostBack('ctl00$CntTop$MainMenu1$MainMenu','oSoveposer')" style="border-style:none;font-size:1em;">Soveposer Expand Soveposer</a></span> <span class="MenuItem ctl00_CntTop_MainMenu1_MainMenu_4"><a class="ctl00_CntTop_MainMenu1_MainMenu_1 MenuItem ctl00_CntTop_MainMenu1_MainMenu_3" href="java script:__doPostBack('ctl00$CntTop$MainMenu1$MainMenu','oRygs&amp;aelig;kke')" style="border-style:none;font-size:1em;">Rygs&aelig;kke Expand Rygs&amp;aelig;kke</a></span> <span class="MenuItem ctl00_CntTop_MainMenu1_MainMenu_4"><a class="ctl00_CntTop_MainMenu1_MainMenu_1 MenuItem ctl00_CntTop_MainMenu1_MainMenu_3" href="java script:__doPostBack('ctl00$CntTop$MainMenu1$MainMenu','oTelte')" style="border-style:none;font-size:1em;">Telte Expand Telte</a></span> <span class="MenuItem ctl00_CntTop_MainMenu1_MainMenu_4"><a class="ctl00_CntTop_MainMenu1_MainMenu_1 MenuItem ctl00_CntTop_MainMenu1_MainMenu_3" href="java script:__doPostBack('ctl00$CntTop$MainMenu1$MainMenu','oBekl&amp;aelig;dning')" style="border-style:none;font-size:1em;">Bekl&aelig;dning Expand Bekl&amp;aelig;dning</a></span> <span class="MenuItem ctl00_CntTop_MainMenu1_MainMenu_4"><a class="ctl00_CntTop_MainMenu1_MainMenu_1 MenuItem ctl00_CntTop_MainMenu1_MainMenu_3" href="java script:__doPostBack('ctl00$CntTop$MainMenu1$MainMenu','oDiverse')" style="border-style:none;font-size:1em;">Diverse Expand Diverse</a></span> </div><a name="ctl00_CntTop_MainMenu1_MainMenu_SkipLink"></a> </td> <td style="padding-top:1px;"> <div class="MenuRight"> <div class="divMenuSearch"> <div id="ctl00_CntTop_MainMenu1_SmallSearch1_PnlMain" onkeypress="java script:return WebForm_FireDefaultButton(event, 'ctl00_CntTop_MainMenu1_SmallSearch1_BtnSearch')"> <table cellpadding="0" cellspacing="0" border="0" class="TblSearch"> <tr> <td class="td1"> <input name="ctl00$CntTop$MainMenu1$SmallSearch1$TxtSearch" type="text" id="ctl00_CntTop_MainMenu1_SmallSearch1_TxtSearch" class="txt" /> <span id="ctl00_CntTop_MainMenu1_SmallSearch1_ReqTextSearch" style="color:Red;visibility:hidden;"></span> </td> <td class="td2"> <input type="submit" name="ctl00$CntTop$MainMenu1$SmallSearch1$BtnSearch" value="Søg" onclick="java script:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$CntTop$MainMenu1$SmallSearch1$BtnSearch&quot;, &quot;&quot;, true, &quot;search&quot;, &quot;&quot;, false, false))" id="ctl00_CntTop_MainMenu1_SmallSearch1_BtnSearch" class="btn" /> </td> </tr> </table>


Jeg mener ikke at det vil løse noget at fjerne client caching, jeg siger bare at problemet altid forsvinder med en (F5)
Avatar billede jokkejensen Novice
13. august 2010 - 14:46 #3
Har du sat menupunkternes clientID som klasse på dem ? de kan ændre sig hvis du flytter menuen over i en anden control mm, så er ikke sikre at benytte.

Desuden set det ud som om at de alle er ens:

<span class="MenuItem ctl00_CntTop_MainMenu1_MainMenu_4">
<a class="ctl00_CntTop_MainMenu1_MainMenu_1 MenuItem ctl00_CntTop_MainMenu1_MainMenu_3">XXX
</a></span>

Du kan ikke ligge den online, man kunne frygte at disse klasse ændrede sig, ved postback el lignende ?
Avatar billede hulla Novice
13. august 2010 - 15:08 #4
Det forstår jeg ikke helt, den del af koden er jo helt autogenereret  ved brug af ASP.NET menu control og har altid virket / og virker i alle andre browsere og altid i safari og chrome ved tryk på F5
Avatar billede hulla Novice
02. september 2010 - 20:48 #5
Er der nogen der kan give mig et link til en webside der benytter en asp.net menu, måske både med og uden css friendly adapter brugt.

Jeg har gennemsøgt nettet i adskillige timer og prøvet en enorm masse muligheder, men ingen løsninger har hjulpet endnu.
Avatar billede hulla Novice
02. oktober 2010 - 09:03 #6
Det lykkes med Css Friendly Adapter som åbenbart er meget benyttet, og mit problem var ganske velkendt
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester