Avatar billede triple-x Nybegynder
28. august 2004 - 22:10 Der er 20 kommentarer og
2 løsninger

<div> problem

Hej Eksperter

Jeg har et problem ang. placering af et <div> på præcise koordinater.

hvordan gøres dette?

På forhånd tak
Avatar billede htm Nybegynder
28. august 2004 - 22:16 #1
position: absolute;
top: 300px;
left: 500px;

Placerer din div 300 fra toppen og 500 fra venstre.
Avatar billede triple-x Nybegynder
28. august 2004 - 22:17 #2
mit problem er at det ligger i et javascript, kan du hjælpe mig hvor jeg skal bestemme koordinaterne i dette javascript

function visDIV(id,vis){
if(NS4){
m=document[id]
m.visibility=vis?"show":"hide"
}
else{
m=false
if(W3C)m=document.getElementById(id)
if(IE4)m=document.all[id]
m.style.visibility=vis?"visible":"hidden"
}
}
Avatar billede htm Nybegynder
28. august 2004 - 22:21 #3
Sæt placeringen som den skal være via CSS. som i eksemplet jeg gav. Javascripten bruger du så til at vise div'en og skjule div'en med.

Det script du har der ser ud til at vil vise (eller skule) din div.
Avatar billede triple-x Nybegynder
28. august 2004 - 22:22 #4
problemet er at den skal skifte konstant.
Avatar billede triple-x Nybegynder
28. august 2004 - 22:23 #5
scriptet jeg har viser min div
Avatar billede htm Nybegynder
28. august 2004 - 22:28 #6
Sådan noget lign. ?

function visDIV(id,vis,x,y)
{
    if(NS4)
    {
        m=document[id];
        m.visibility=vis?"show":"hide";
        m.left = x+'px';
        m.top = y+'px';
    }
    else
    {
        m=false;
        if(W3C) m=document.getElementById(id);
        if(IE4) m=document.all[id];
        m.style.visibility=vis?"visible":"hidden";
        m.style.left = x+'px';
        m.style.top = y+'px';
    }
}

Jeg er ikke så stærk til hvordan NS4 vil tolke det, så ved ikke om det virker i NS4, men det skulle være ok i den nederste.
Avatar billede htm Nybegynder
28. august 2004 - 22:29 #7
har tilføjet x,y som parametre til din funktion.
Avatar billede triple-x Nybegynder
28. august 2004 - 22:30 #8
htm - det ser rigtig godt ud, jeg prøver det lige af og vender tilbage om et par minutter, men mange tak indtil videre.
Avatar billede triple-x Nybegynder
28. august 2004 - 22:32 #9
det virker, gider du smide et svar så du kan få point. :)
Avatar billede htm Nybegynder
28. august 2004 - 22:33 #10
Det kan jeg godt. Men læg selv et svar og tag de fleste point selv. Dette spørgsmål er ikke 200 point værd. max 30 :-)
Avatar billede triple-x Nybegynder
28. august 2004 - 22:35 #11
ej hurtig hjælp vil jeg gerne betale lidt ekstra for du for 100 :)
Avatar billede triple-x Nybegynder
28. august 2004 - 22:44 #12
hey igen HTM, er det muligt du lige kan hjælpe mig en lille javascript "fejl" mere.

Hvis jeg har det script ovenfor som åbner min div, så vil jeg gerne ha et der gør at jeg kan lukke min div ved et museklik uden for selve div'en hvordan skal det se ud?
Avatar billede htm Nybegynder
28. august 2004 - 22:52 #13
Hmmm - nok ikke helt nemt...

men sådan noget her måske:

Denne smider du som global javascript variabel:

var activediv;

så laver du noge som
<body onclick="visDIV(activediv,false,0,0);">

og tilføj denne linie øverst i din funktion:
activediv = id;

Tænkt eksempel ved ikke om det virker, :-)
Avatar billede triple-x Nybegynder
28. august 2004 - 22:55 #14
okay det virker delvist :)
Den forsvinder fint nok så længe man klikker inden for den frame den poppper op i. men det skal også virke når jeg trykker ude for den frame hvor den kommer op i.

jeg ved jeg er krævende :)
Avatar billede triple-x Nybegynder
28. august 2004 - 23:04 #15
ups nyt problem, den tekst der er i den div er links, og når man så trykker på de links vælger den så at lukke diven istedet for at føre mig til det link der er i den div. ikke så smart :) noget du har lyst til at bryde hovedet med?
Avatar billede htm Nybegynder
28. august 2004 - 23:11 #16
Derfor jeg smed det som onclick event på body, har du gjort det?

evt. prøv dette:

enten:

window.onclick = divclose;

eller

document.onclick = divclose;

og så laver du en funktion:

function divclose()
{
  visDIV(activediv,false,0,0);
}

Ang. dit problem med links i div'en prøv og smid en onclick event på din div og return false:

<siv id="mindiv" onclick="return false">
Avatar billede triple-x Nybegynder
28. august 2004 - 23:15 #17
hvor skal det der window.onclick = divclose; eller document.onclick = divclose; sættes ind, det forstår jeg ikke helt.

og med koden <div id="mindiv" onclick="return false"> kan jeg ikke følge linksne, altså når jeg trykker på dem kommer jeg ingen steder hen.
Avatar billede htm Nybegynder
28. august 2004 - 23:19 #18
> og med koden <div id="mindiv" onclick="return false"> kan jeg ikke følge linksne,
> altså når jeg trykker på dem kommer jeg ingen steder hen.
Nå ja det er klart :-) Det havde jeg ikke tænkt over...


> hvor skal det der window.onclick = divclose; eller document.onclick = divclose; sættes ind, det forstår jeg ikke helt.

Det skal du sætte i din javascript i head.
eks.
<script type="text/javascript">
function divclose()
{
  visDIV(activediv,false,0,0);
}
function visDIV(id, vis, x, y)
{
  //bla bla
}
window.onclick = divclose;
</script>

Men før havde du da smidt onclick på div'en eller body ?
Avatar billede triple-x Nybegynder
28. august 2004 - 23:27 #19
har du så en anden løsning til det med at man ikke kan klikke på links :)
Avatar billede triple-x Nybegynder
28. august 2004 - 23:27 #20
hvis jeg bare kan få det til at virke er den anden funktion ikke så vigtig da jeg har sat den til at fjerne sig selv efter nogle få sekunder
Avatar billede htm Nybegynder
28. august 2004 - 23:28 #21
Nej - ikke hvis det ikke virker med at placere onclick eventen på <body> eller som document.onclick eller window.onclick
Avatar billede triple-x Nybegynder
28. august 2004 - 23:34 #22
øv bøv så må jeg fjerne den funktion helt. hvis du kommer i tanke om en løsning så må du endelig skrive herinde
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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