Du måste escapea dina "innre" apostrofer med backslash.
onmouseout="setTimeout('fnHide(\\'OrgMain\\',\\'OrgDetails\\')',3000);"
Mvh
5 svar · 329 visningar · startad av hannahb
Hej!
Jag har problem med en onmouseout som inte fungerar, kodraden ser ut såhär:
onmouseout="setTimeout('fnHide('OrgMain','OrgDetails')',3000"
Det verkar som att funktionen fnHide aldrig körs, för lagret försvinner inte efter den satta tiden, det försvinner inte alls.
Är det någon som har något tips, kanske har gjort något liknande men som fungerar?
Du måste escapea dina "innre" apostrofer med backslash.
onmouseout="setTimeout('fnHide(\\'OrgMain\\',\\'OrgDetails\\')',3000);"
Mvh
Hej!
Tack! Det fungerar ju perfekt nu, tack så mycket!!
Fast jag är säker på att jag använt den koden innan utan backslashar...är det nåt nytt eller?
Jag tror inte du använt den koden på just det sättet utan att escapea apostroferna. Däremot kan du använda den på lite annat sätt utan att behöva escapea. Exempel:
<script>
setTimeout("fnHide('OrgMain', 'OrgDetails')", 3000);
</script>
Ja just det, det har du nog rätt i.
Nu har jag ju som alltid fått ett "följdproblem".
Det är en meny det handlar om, och när jag nu satt onmouseout="setTimout ()"; så vill jag att den ska verka bara på 'OrgMain' och inte 'OrgDetails', eftersom meyn då försvinner mitt i det att man håller på att välja undermeny. Men samtidigt ska ju allt försvinna om man för muspekaren ut från 'OrgMain'.
Oj...förstår du nåt av det här?
Så här ser koden ut:
<div id="OrgMain" onmouseover="fnShow('OrgMain','OrgDetails')" style="cursor:pointer" onmouseout="setTimeout('fnHide(\'OrgMain\')',500);"><a class="ab" href="demo.php?p_id=2">HUVUDMENY</a><br/>
<div id="OrgDetails" onmouseover="fnShow('OrgMain','OrgDetails')" style="visibility:hidden; position:absolute">
<a class="aa" href="demo.php?p_id=3">UNDERMENY1</a><br/>
<a class="aa" href="demo.php?p_id=4">UNDERMENY2</a><br/>
</div>
</div>
Ursäkta, fel på en rad, den ser ut såhär:
onmouseout="setTimeout('fnHide(\'OrgMain\',\'OrgDetails\')',500);