Avatar billede ermolenko Nybegynder
15. december 2002 - 20:33 Der er 29 kommentarer og
1 løsning

Placering af layers

JEg er klar over, at dette spørgsmål har været oppe at vende før, men jeg har ikke rigtigt kunne finde et fyldestgivende svar på problemet i de tidligere tråde.

Anyway, here goes:
Jeg har lavet mig en dropmenu, som "falder" ned fra en bjælke foroven på min side.
Denne bjælke består af 6-7 menupunkter, der er placeret efter hinanden vha. en tabel.

Hele møget er placeret i en centreret tabel, ganske som det er tilfældet med eksperten.dk.

Problemet er så, at dropmenuerne flytter sig, alt efter hvor stort vinduet er og dermed hvor lang afstand der er til top-left corner. Det er tilsyneladende også tilfældet her på siden (prøv at aktivere dropmenuen med forskellige vinduesbredder og se den flytte sig).

Mit spørgsmål er så, kan det virkelig ikke lade sig gøre at få den til at orientere sig i forhold til den tabel, som indeholder min menubjælke?

Pelkjaer foreslår andetsteds, at man skal flytte placeringsbamsen ind i denne tabel, men det har ingen effekt. Jeg har prøvet det.

Der blev også tidligere givet et link til en CSS-forklaring på html.dk, men den kunne jeg nu ikke rigtig få noget ud af, så hvis du svarer med en CSS-løsning, så kom venligst med et mere uddybende svar.

Er der i øvrigt nogen der har et link til en god CSS-side med tuts og andet snaaack?

Tak!
Avatar billede pelkjaer Nybegynder
15. december 2002 - 20:35 #1
Har du et link til din menu?
Avatar billede ermolenko Nybegynder
15. december 2002 - 20:40 #2
Avatar billede pelkjaer Nybegynder
15. december 2002 - 20:46 #3
Din div er da heller ikke placeret i en celle.
Er den det vil det virke i IE og NS6 - jeg ved dog ikke hvad dine krav er.

Anyways, kan du ikke få det til at virke skal jeg kigge på det imorgen formiddag engang.
Avatar billede ermolenko Nybegynder
15. december 2002 - 20:50 #4
Aha, mit menu-layer skal altså være placeret i en celle?
Men hvordan laver jeg den celle, uden at det går ud over resten af designet på siden?

Sorry, men jeg er lidt af en layer-mongol.

I øvrigt (noget helt andet): Når jeg trykker "View Source" på andre sider, så sker der ikke en skid. Nogen ide om, hvad der sker der? (Sidder med WinXP).

Tak for hjælpen indtil videre.
Avatar billede pelkjaer Nybegynder
15. december 2002 - 20:52 #5
Sp. 1: Det er jo så spørgsmålet, jeg ved ikke hvordan din side er bygget op. Jeg kigger først imorgen engang.

Sp. 2: Din cache kan være fyldt - prøv og slet dine midlertidlige internetfiler (funktioner-->internetindstillinger)
Avatar billede ermolenko Nybegynder
15. december 2002 - 20:56 #6
Ok, tak for det.
Avatar billede ermolenko Nybegynder
15. december 2002 - 21:00 #7
Forbered dig i øvrigt på en omgang rodet spaghetti-kode...
Det er ikke lige kønt det hele.
Avatar billede ermolenko Nybegynder
17. december 2002 - 12:51 #8
Hvis jeg lige skal komme med en hurtig indføring i min opbygning, så kan jeg fortælle, at den øverste "bjælke" med fotos og menu-bar er del af en template. Den mørkegrå bjælke i venstre side samt det lysegrå hovedfelt i midten er editable regions. Bare så du slipper for at sidde og regne det ud selv. Ellers noget du har behov for at vide?
Avatar billede pelkjaer Nybegynder
17. december 2002 - 12:51 #9
Jeg har glemt dig :)
Jeg kigger på det nu.
Avatar billede pelkjaer Nybegynder
17. december 2002 - 13:08 #10
1: download denne extention: http://www.projectseven.com/extensions/downloads/P7_Snap_263.mxp

Så kan du se hvad jeg har lavet, samt redigere i det.

2: Tilføj dette til dit java script:

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function P7_Snap() { //v2.63 by PVII
var x,y,ox,bx,oy,p,tx,a,b,k,d,da,e,el,tw,q0,xx,yy,w1,pa='px',args=P7_Snap.arguments;a=parseInt(a);
if(document.layers||window.opera){pa='';}for(k=0;k<(args.length);k+=4){
if((g=MM_findObj(args[k]))!=null){if((el=MM_findObj(args[k+1]))!=null){
a=parseInt(args[k+2]);b=parseInt(args[k+3]);x=0;y=0;ox=0;oy=0;p="";tx=1;
da="document.all['"+args[k]+"']";if(document.getElementById){
d="document.getElementsByName('"+args[k]+"')[0]";if(!eval(d)){
d="document.getElementById('"+args[k]+"')";if(!eval(d)){d=da;}}
}else if(document.all){d=da;}if(document.all||document.getElementById){while(tx==1){
p+=".offsetParent";if(eval(d+p)){x+=parseInt(eval(d+p+".offsetLeft"));y+=parseInt(eval(d+p+".offsetTop"));
}else{tx=0;}}ox=parseInt(g.offsetLeft);oy=parseInt(g.offsetTop);tw=x+ox+y+oy;
if(tw==0||(navigator.appVersion.indexOf("MSIE 4")>-1&&navigator.appVersion.indexOf("Mac")>-1)){
  ox=0;oy=0;if(g.style.left){x=parseInt(g.style.left);y=parseInt(g.style.top);}else{
  w1=parseInt(el.style.width);bx=(a<0)?-5-w1:-10;a=(Math.abs(a)<1000)?0:a;b=(Math.abs(b)<1000)?0:b;
  x=document.body.scrollLeft+event.clientX+bx;y=document.body.scrollTop+event.clientY;}}
}else if(document.layers){x=g.x;y=g.y;q0=document.layers,dd="";for(var s=0;s<q0.length;s++){
  dd='document.'+q0[s].name;if(eval(dd+'.document.'+args[k])){x+=eval(dd+'.left');y+=eval(dd+'.top');
  break;}}}e=(document.layers)?el:el.style;xx=parseInt(x+ox+a),yy=parseInt(y+oy+b);
if(navigator.appVersion.indexOf("MSIE 5")>-1 && navigator.appVersion.indexOf("Mac")>-1){
  xx+=parseInt(document.body.leftMargin);yy+=parseInt(document.body.topMargin);}
e.left=xx+pa;e.top=yy+pa;}}}
}

3: Udskift hele din <body> linje med:

<body bgcolor="#666666" text="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('Nye Knapper/Nyeste/kongerne_on.jpg','Nye Knapper/Nyeste/sofa_on.jpg','Nye Knapper/Nyeste/profeterne_on.jpg','Nye Knapper/Nyeste/fame_on.jpg','Nye Knapper/Nyeste/avisadurr_on.jpg','Nye Knapper/Nyeste/forum_on.jpg','Nye Knapper/Nyeste/links_on.jpg','Nye Knapper/Nyeste/logo_on.jpg','Nye Knapper/dropmenu/nyhed_on.jpg','Nye Knapper/dropmenu/hvem_er_on.jpg','Nye Knapper/dropmenu/billeder_on.jpg','Nye Knapper/dropmenu/abc_on.jpg','Nye Knapper/dropmenu/top5_on.jpg','Nye Knapper/dropmenu/faq_on.jpg','Nye Knapper/dropmenu/polls_on.jpg','Billeder/vinderwood.gif');P7_Snap('kongerne','Kongemenu',4,0)" onResize="location.reload()" link="#000000" vlink="#000000" alink="#000000">

Nu er layeret sat til at positionere efter billedet der hedder "kongerne" - og derfor skal vi også reloade ved resize.

Inde i DW kan du trykke på "body" nede i venstre hjørne, så vil du i behaviors vinduet se "Snap Layers by PVII". Her kan du ændre top/left til billedet "kongerne".

Du spørger bare hvis der er mere.
Avatar billede ermolenko Nybegynder
17. december 2002 - 16:27 #11
Kanon!
Det funger simpelthen!

Så har jeg blot et spørgsmål tilbage:
Hvad skal jeg være opmærksom på, når jeg laver yderligere dropmenuer derhenaf?
Mao. hvad skal jeg ændre/tilføje i hvilken kode?

Jeg har regnet ud, at I den næstsidste linie i tilføjelsen til body-koden er de to koordinater til at angive positionen. Men hvor tilføjer jeg den næste menu? Og hvor hører det semikolon henne i denne sætning:

Knapper/dropmenu/polls_on.jpg','Billeder/vinderwood.gif');P7_Snap('kongerne','Kongemenu',4,0)"

Mange tak for hjælpen.
Dine points er på vej så snart du svarer.

Mvh
Ermolenko
Avatar billede pelkjaer Nybegynder
17. december 2002 - 16:36 #12
Du klikker bare på "Snap Layers by PVII" i behaviors vinduet, her kan du tilføje flere - tryk på <body> i nederste venstre hjørne (det betyder at du nu ser de script tilføjet på onload="") - så ser du det.

The codeway gør du bare sådan her:

Knapper/dropmenu/polls_on.jpg','Billeder/vinderwood.gif');P7_Snap('kongerne','Kongemenu',4,0 ,'kongerne2','Kongemenu2',40,0)"
Avatar billede pelkjaer Nybegynder
17. december 2002 - 16:36 #13
Det var et svar
Avatar billede ermolenko Nybegynder
17. december 2002 - 16:56 #14
Thx a lot!
Jeg tror jeg foretrækker "the codeway". Men de sidste koordinater, relaterer de sig så til "kongerne" eller til "kongerne2"? Nå, der er vel ikke nogen grund til at spørge. Jeg kan ligeså godt bare prøve det af.

Endnu en gang tak
Avatar billede pelkjaer Nybegynder
17. december 2002 - 17:00 #15
Du siger selv det eneste rigtige :) Prøv det af, går det ikke kan du spørge - det er en fin indgangsvinkel.
Avatar billede pelkjaer Nybegynder
17. december 2002 - 17:01 #16
"konger2" og fiktivt - jeg antager at dit menupunkt nr. 2 kalder du "kongerne2" - og layeret til menu2 kaldes "Kongemenu2".
Avatar billede ermolenko Nybegynder
17. december 2002 - 19:25 #17
Nå, pelkjaer!
Nu er der så opstået et andet "problem" desværre.
Nemlig at de enkelte rollover-billeder i min dropmenu loades rocker-langsomt. Ikke verdens største problem måske, men træls alligevel.

Har du en forklaring på det?
Avatar billede pelkjaer Nybegynder
17. december 2002 - 19:36 #18
Ikke en logisk nej, er din side opdateret? (på nettet)
Avatar billede ermolenko Nybegynder
17. december 2002 - 19:38 #19
Jeps Den er opdateret
Avatar billede pelkjaer Nybegynder
17. december 2002 - 19:38 #20
Jo det har jeg :)

Prøv at tjek kildekoden - din preload (på onloaden) har forkerte stier.
Avatar billede pelkjaer Nybegynder
17. december 2002 - 19:39 #21
Templates/Nye%20Knapper/Nyeste/kongerne_on.jpg - den går ikke
Avatar billede ermolenko Nybegynder
17. december 2002 - 19:44 #22
Aha.....

Men nu jeg har dig:
Er det helt komplet ligegyldigt hvor i mit javascript jeg har plottet det ind, som du gav mig, eller er det bedst i starten eller slutningen osv.?

Kan jeg give dig flere points?
Avatar billede pelkjaer Nybegynder
17. december 2002 - 19:48 #23
Du kan ikke give flere point - og du skal heller ike :)
Det er ligegyldigt - dog kan det være en fordel at gemme det hele som en ekstern fil, da det på undersider så blot caches.

Og så så lidt kode som muligt :)
Avatar billede ermolenko Nybegynder
17. december 2002 - 19:59 #24
Ok, nu er det så, at jeg sikkert begynder at blive en anelse dum, men jeg kan stadig ikke helt finde ud af, hvor hunden ligger begravet....

Jeg går ud fra, at det forkerte i stien er, at knapperne ikke findes inde i templates-folderen, men hvordan faen finder den dem så alligevel? Hvorfor får jeg så ikke bare en fejl eller at de slet ikke kommer frem?

Men: Hvordan får jeg lavet stien om, for det er jo noget der er defineret i body-tagget på templaten. Dvs. det er vel her jeg skal ændre det. Men i kildekoden til templaten er stien korrekt. Den ser sådan her ud:

onLoad="MM_preloadImages('Nye Knapper/Nyeste/kongerne_on.jpg', osv.

Hvordan undgår jeg, at de filer der dannes ud fra templaten automatisk sætter templtes/ ind foran?

Ermolenko
Avatar billede pelkjaer Nybegynder
17. december 2002 - 20:00 #25
Du må ikke kalde en mappe "nye knapper" skal være "nye_knapper"
Avatar billede ermolenko Nybegynder
17. december 2002 - 20:04 #26
Så det er simpelthen selve mappen jeg skal omdøbe?
Jeg troede egentlig, at escape-karakteren (%20) ordnede det, men det må man altså ikke?

Dvs. at det er rigtigt nok, at stien starter med Templates/.... selvom min Nye_knapper-mapper ikke ligger herinde under?

Og..... er der noget jeg skal være opmærksom på, når jeg omdøber mappe-navnet, eller opdateres stierne automatisk rundt om i filerne?

Du siger bare til, når jeg bliver FOR dum at høre på og du ikke gider mere....:)
Avatar billede pelkjaer Nybegynder
17. december 2002 - 20:05 #27
Du kan bruge en find&and replace på hele lortet inden du renamer mappen - edit-->find and replace-->vælg hele definerede site
Avatar billede ermolenko Nybegynder
17. december 2002 - 20:06 #28
Ok det sidste spørgsmål har jeg lige fået svar på.
Avatar billede ermolenko Nybegynder
17. december 2002 - 20:12 #29
Fuck mand. Det spiller helt vildt nu.
Kanon!

Mange tak mr. pelkjaer!
Avatar billede pelkjaer Nybegynder
17. december 2002 - 20:13 #30
Var så lidt :)
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