Avatar billede cheech Nybegynder
25. marts 2002 - 21:54 Der er 31 kommentarer og
2 løsninger

Viser en Div i en anden frame

Jeg vil gerne vise en div i framenen "vis" den skal være 10pixel fra toppen og 400pixel fra venstre..
Og den skal have en half gennem sigtig farve..
så man kan se hvad der står under...
Er der nogen som kan lave det?
Jeg er total på bar bund..
Avatar billede tknudsen Nybegynder
26. marts 2002 - 08:21 #1
her er oget af svaret...

det med gennemsigtigheden kan du lave via filter:alpha(Opacity=20), men jeg mener kun at det virker på billeder

jeg har selv lavet noget lignende engang - jeg leder lige efter det...

<style>

#mydiv
{
  position:absolute;
  left: 10px;
  top: 400px;
}

</style>


<body> (i vis-famen)
<div id="mydiv">

</div>

</body>
Avatar billede tknudsen Nybegynder
26. marts 2002 - 08:35 #2
jo - nu har jeg fundet det...

jeg har puttet et billede ind i <div>-tag'et og sat et alpha filter på det billede:

<img id="menubg" border="1" src="sti_til_billede" style="position:absolute;width:100%;filter:alpha(opacity=50)">
Avatar billede cheech Nybegynder
26. marts 2002 - 09:51 #3
Altså jeg er en JS n00b...mildest talt..
Hvordan sætter jeg den div de 10pixel fra toppen og 400pixel fra venstre?
Avatar billede tknudsen Nybegynder
26. marts 2002 - 09:58 #4
I eksemplet har jeg brugt css til at placere div-tag'et. Den style, som hedder #mydiv bliver brugt til alle elementer med id="mydiv".

Du kan læse meget mere om css her:
http://www.w3schools.com/css

div-tag'et skal laves i det dokument, som er i "vis"-framen.

Er det meningen at det div-tag skal kunne vises/fjernes ved bestemte bruger-interaktioner ?
Avatar billede cheech Nybegynder
26. marts 2002 - 10:04 #5
Tak skal du have...
Du ved ikke det med man styrer den fra en enden frame?
Avatar billede tknudsen Nybegynder
26. marts 2002 - 10:04 #6
styrer ?
Avatar billede tknudsen Nybegynder
26. marts 2002 - 10:14 #7
Du kan sagtens ændre et div-tags style fra en anden frame, hvis du har rettighed til det...

Det drejer sig om adressering af div-tag'et.

Eks:
main.htm:

<frameset cols="50%,*">
  <frame src="page1.htm" name="left">
  <frame src="page2.htm" name="rigth">
</frameset>

page2.htm

<head>
<style>
#mydiv
{
  position:absolute;
  left: 10px;
  top: 400px;
}
</style>
</head>
<body> (i vis-famen)
<div id="mydiv">
</div>
</body>

page1.htm

<head>
<script>

function toggleVisibility()
{
  var objDiv = parent.left.document.getElementById('mydiv'); // <-- adresseringen
  if(objDiv.style.visibility=='hidden')
    objDiv.style.visibility = 'visible';
  else
    objDiv.style.visibility = 'hidden';
}

</script>
</head>

<body>
<input type="button" value="Toggle visibility" onclick="toggleVisibility()">
</body>
Avatar billede cheech Nybegynder
26. marts 2002 - 12:09 #8
Hvordan gør jeg hvis jeg gerne vil have flere divs?
Altså flere menuer?
Fordi det var meningen med det
Avatar billede tknudsen Nybegynder
26. marts 2002 - 12:18 #9
<div id="menu1">
</div>

<div id="menu2">
</div>
Avatar billede cheech Nybegynder
26. marts 2002 - 12:38 #10
Hvad så med page1.htm?
Hvad skal det stå i den?
Og det skal ikke være knapper men Links..
Avatar billede ras2000 Nybegynder
26. marts 2002 - 13:37 #11
Jeg mener at filtre kun virker i ie.
Avatar billede tknudsen Nybegynder
26. marts 2002 - 13:38 #12
ras2000 >> det er korrekt
Avatar billede cheech Nybegynder
26. marts 2002 - 13:42 #13
Det er også OK...da jeg ikke har nogen hensigt i at optimere min side til NS...
Har du svar på mit sidste spg?
Avatar billede tknudsen Nybegynder
26. marts 2002 - 13:45 #14
<head>
<script>

function toggleVisibility(objName)
{
  var objDiv = parent.left.document.getElementById(objName); // <-- adresseringen
  if(objDiv.style.visibility=='hidden')
    objDiv.style.visibility = 'visible';
  else
    objDiv.style.visibility = 'hidden';
}

</script>
</head>

<body>
<a style="cursor:hand" onclick="toggleVisibility('menu1')>menu1</a>
<a style="cursor:hand" onclick="toggleVisibility('menu1')>menu1</a>
</body>
Avatar billede tknudsen Nybegynder
26. marts 2002 - 13:45 #15
ups...

det skal sføli være:
<body>
<a style="cursor:hand" onclick="toggleVisibility('menu1')>menu1</a><br>
<a style="cursor:hand" onclick="toggleVisibility('menu2')>menu2</a>
</body>
Avatar billede ras2000 Nybegynder
26. marts 2002 - 13:46 #16
Vil duy ahve dem oven i hinanden, ved siden af hinanden, eller i forskellige frames, eller hvad? Du kan styre et div fra en anden frame ved koden parent.rammenavn.document.all.divID
Avatar billede cheech Nybegynder
26. marts 2002 - 13:50 #17
Jammen de divs de skal vises i en anden frame..
Men de skal stå samme sted...
Avatar billede tknudsen Nybegynder
26. marts 2002 - 13:50 #18
kan du få det til at virke ?
Avatar billede ras2000 Nybegynder
26. marts 2002 - 13:56 #19
Altså, du vil have forskellige divs til at stå samme sted i samme frame, og så styre hvor vidst de er synlige via en anden frame? Så har du to muligheder, du kan skrive indholdet af samme div fra den anden frame, og så beholde det divs egenskaber fast, eller have lige så mange divs på din frameside, som du har brug for, og så styre deres syunlighed via parent.rammenavn.document.all.divID.style.display = 'none/block';
Avatar billede cheech Nybegynder
26. marts 2002 - 14:08 #20
tester det når jeg kommer hjem..da jeg sidder hos en ven...
Avatar billede ras2000 Nybegynder
26. marts 2002 - 14:27 #21
Hvis du har en frame der ser sådan her ud:
<html>
<head>
<script type="text/javascript">
m = 0;
function vis(n){
    obj = eval("parent.hoejre.document.all.punkt" + n)
    obj.style.display = "block";
    if (m!=0) {
        obj = eval("parent.hoejre.document.all.punkt" + m)
        obj.style.display = "none";
    }
    m = n;
}
</script>
</head>
<body>
<p onclick="vis(1)">punkt 1</p>
<p onclick="vis(2)">punkt 2</p>
<p onclick="vis(3)">punkt 3</p>
</body>
</html>
Og en anden frame der ser sådan her ud:
<html>
<head>
</head>
<body>
<div id="punkt1" style="display:none">her står der noget om punkt 1</div>
<div id="punkt2" style="display:none">her står der noget om punkt 2</div>
<div id="punkt3" style="display:none">her står der noget om punkt 3</div>
</body>
</html>
Så vil du kunne vise dine divs.
Hvordan du så får din gennemsigtige effect til at virke, ved jeg ikke.
Avatar billede cheech Nybegynder
26. marts 2002 - 20:24 #22
Er det ikke bare at bruge eksblet fra oven?
CSS?
Avatar billede ras2000 Nybegynder
27. marts 2002 - 10:55 #23
Prøv
Avatar billede cheech Nybegynder
27. marts 2002 - 11:45 #24
Ras2000 dit eks virker ikke..
Den giver bare en fejl på siden...
se her: http://80.62.143.214/js/index.htm
Avatar billede ras2000 Nybegynder
27. marts 2002 - 11:49 #25
Det er muligvis fordi vores frames ikke hedder det samme. Prøv at skift hoejre ud med chat
Avatar billede ras2000 Nybegynder
27. marts 2002 - 12:07 #26
Altså skift det her
function vis(n){
    obj = eval("parent.hoejre.document.all.punkt" + n)
    obj.style.display = "block";
    if (m!=0) {
        obj = eval("parent.hoejre.document.all.punkt" + m)
        obj.style.display = "none";
    }
    m = n;
}

ud med

function vis(n){
    obj = eval("parent.chat.document.all.punkt" + n)
    obj.style.display = "block";
    if (m!=0) {
        obj = eval("parent.chat.document.all.punkt" + m)
        obj.style.display = "none";
    }
    m = n;
}
Avatar billede cheech Nybegynder
27. marts 2002 - 12:35 #27
Hvordan gør jeg sådan der kun kan være en fremme af gangen?
Og at den starter med at vise punkt 1?
Avatar billede cheech Nybegynder
27. marts 2002 - 12:50 #28
Jeg afsætter lige 200ialt...
Så i begge kan få 100points når jeg lige får sidste SPG svaret
Avatar billede ras2000 Nybegynder
27. marts 2002 - 12:52 #29
Der burde kun være en fremme af gangen. Hvis du vil have punkt 1 fremme fra start af så sæt display:block i chat siden i div'et punkt1, og lav din function om således:
<script type="text/javascript">
m = 1;
function vis(n){
    obj = eval("parent.hoejre.document.all.punkt" + n)
    obj.style.display = "block";
    obj = eval("parent.hoejre.document.all.punkt" + m)
    obj.style.display = "none";
    m = n;
}
</script>
Avatar billede ras2000 Nybegynder
27. marts 2002 - 12:54 #30
Undskyld, sådan her:
<SCRIPT type=text/javascript>
m = 0;
function vis(n){
    obj = eval("parent.chat.document.all.punkt" + n)
    obj.style.display = "block";
    if ( m!=0) {
      obj = eval("parent.chat.document.all.punkt" + m)
      obj.style.display = "none";
    }
    m = n;
}
</SCRIPT>
Avatar billede cheech Nybegynder
27. marts 2002 - 13:04 #31
Jammen det virker jo perfect ;) raslav lige et svar så du får din del af kagen!
Avatar billede ras2000 Nybegynder
27. marts 2002 - 13:06 #32
svar
Avatar billede cheech Nybegynder
29. marts 2002 - 01:39 #33
tknudsen hvis du lige gider hjælpe mig igen..
Hvordan gør jeg sådan jeg kan skrive text over billedet?
Bare det skal jeg bruge gider du bare give et eks?
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