var menus = [ new ypSlideOutMenu("menu1", "down", 115, 102, 86, 59), new ypSlideOutMenu("menu2", "down", 260, 102, 86, 59), new ypSlideOutMenu("menu3", "down", 340, 102, 86, 140), new ypSlideOutMenu("menu4", "down", 425, 102, 86, 120), new ypSlideOutMenu("menu5", "down", 515, 102, 86, 120) ]
for (var i = 0; i < menus.length; i++) { menus[i].onactivate = new Function("document.getElementById('act" + i + "').className='active';"); menus[i].ondeactivate = new Function("document.getElementById('act" + i + "').className='';"); } </script>
Som I kan se, forholder menuen sig til vinduet. Jeg tror at løsningen er at skrive en lille variabel, der fx. forholder sig til et billede, og derefter skrive:
new ypSlideOutMenu("menu1", "down", var+115, 102, 86, 59)
som i kan slutte, er mine javaskills = 0, udover copypaste. Alt hjælp er meget påskønnet, hvis I kunne kommentere jeres kode, ville det være super.
Ups, grundideen var god nok, men den holder ikke vand !-):
<script language="javascript"> var l = new Array(); var t = new Array();
for (var i = 0; i < 5; i++) {//antallet af menuer = 5 elm = document.getElementById('act' + i); for(var zx=zy=0;elm!=null;zx+=elm.offsetLeft,zy+=elm.offsetTop,elm=elm.offsetParent); l[i] = zx + 15; t[i] = zy + 15; }
var menus = [ new ypSlideOutMenu("menu1", "down", l[0], t[0], 86, 59), new ypSlideOutMenu("menu2", "down", l[1], t[1], 86, 59), new ypSlideOutMenu("menu3", "down", l[2], t[2], 86, 140), new ypSlideOutMenu("menu4", "down", l[3], t[3], 86, 120), new ypSlideOutMenu("menu5", "down", l[4], t[4], 86, 120) ]
for (var i = 0; i < menus.length; i++) { menus[i].onactivate = new Function("document.getElementById('act" + i + "').className='active';"); menus[i].ondeactivate = new Function("document.getElementById('act" + i + "').className='';"); }
tak for svar roenving, men den slideout'serne orienterer sig stadig væk i forhold til venstre side.
Menuen er i en table der er center aligned. Ikke fordi jeg forstår meget af din kode, men kan man ikke tage elementById på fx. Forside teksten, eller tablen menuen sidder i eller noget ?
Her er humlen: Jeg kan se at det virker, jeg kan fx. referere til et table id, men her er så problemet. Scriptet fanger fx. X værdien af reference tablen, men ved resizing af vinduet, opdaterer den ikke til den nye værdi.
Kan I hjælpe mig med at fixe scriptet, så at værdien kan opdateres ?
-- desværre tror jeg ikke man kan sætte noget ind onResize, når der oprettes slide-elementer på den måde ...
-- men ellers velbekomme '-)
Synes godt om
Ny brugerNybegynder
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.