/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
retuner værdi til brug i htlm tag via Java~
Fra : Thomas


Dato : 25-05-04 19:12

hey!
newbie:
hvordan får jeg et javascript til at retunere f.eks et tal som jeg så kan
bruge i en html tag?
Jeg vil altså f.eks. bruge et tal retuneret af en JavaScript funktion i et
html tag f.eks. ...border="(her skal tallet fra javascriptfunktionen så
stå)">
nogen der kan hjælpe?

Mvh. Thomas



 
 
Lasse Reichstein Nie~ (25-05-2004)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 25-05-04 21:50

"Thomas" <thomasFJERNDette@tunet.dk> writes:

> hvordan får jeg et javascript til at retunere f.eks et tal som jeg så kan
> bruge i en html tag?
> Jeg vil altså f.eks. bruge et tal retuneret af en JavaScript funktion i et
> html tag f.eks. ...border="(her skal tallet fra javascriptfunktionen så
> stå)">

Der er tre muligheder:
1) Skriv hele tagget med Javascript. Dette kan kun gøres mens siden
er ved at blive indlæst.

var tal = enEllerAndenFunktion();
document.write("<img src='lala.png' border='"+tal+"'>");

Dette er den nemmeste metode, hvis man er i stand til at beregne
funktionens resultat før siden er indlæst. Hvis beregningen kræver
brugerinput, så virker det ikke.

2) Generer elementet med Javascript DOM og indsæt det i dokumentet:
(mere kompliceret, og nok ikke noget jeg vil anbefale for en "newbie")

var img = document.createElement("img");
img.src = "lala.png";
img.style.borderWidth = enEllerAndenFunktion() + "px";
document.getElementById("parentElementId").appendChild(img);

3) Lade elementet findes i dokumentet, og så finde det med DOM og
ændre attributten:

<img src="lala.png" id="imgId">
...
<script type="text/javscript">
var img = document.getElementById("imgId");
img.style.borderWidth = enEllerAndenFunktion() + "px";
</script>


Hvis du kan sige lidt mere præcist hvad du gerne vil gøre, så kan vi
give mere præcise råd :)
/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'

Thomas (27-05-2004)
Kommentar
Fra : Thomas


Dato : 27-05-04 15:08

> Der er tre muligheder:
> 1) Skriv hele tagget med Javascript. Dette kan kun gøres mens siden
> er ved at blive indlæst.
>
> var tal = enEllerAndenFunktion();
> document.write("<img src='lala.png' border='"+tal+"'>");
>
> Dette er den nemmeste metode, hvis man er i stand til at beregne
> funktionens resultat før siden er indlæst. Hvis beregningen kræver
> brugerinput, så virker det ikke.
>
> 2) Generer elementet med Javascript DOM og indsæt det i dokumentet:
> (mere kompliceret, og nok ikke noget jeg vil anbefale for en "newbie")
>
> var img = document.createElement("img");
> img.src = "lala.png";
> img.style.borderWidth = enEllerAndenFunktion() + "px";
> document.getElementById("parentElementId").appendChild(img);
>
> 3) Lade elementet findes i dokumentet, og så finde det med DOM og
> ændre attributten:
>
> <img src="lala.png" id="imgId">
> ...
> <script type="text/javscript">
> var img = document.getElementById("imgId");
> img.style.borderWidth = enEllerAndenFunktion() + "px";
> </script>
>
>
> Hvis du kan sige lidt mere præcist hvad du gerne vil gøre, så kan vi
> give mere præcise råd :)

okay.. det jeg egentlig ville var ved hjælp at JacaScript at centrere et
objekt i browservinduet. Dette ville jeg gøre til dels med screen.height og
screen.width og ved at jeg kender det objekt der skal centreres højde og
bredde. efter et lille regnestykke ville jeg så sætte en
document.body.marginLeft og document.body.marginTop
Kand det lade sig gøre at gøre det på denne måde.. jeg kan ikke umiddelbart
få det til at virke...

Mvh. Thomas



Lasse Reichstein Nie~ (27-05-2004)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 27-05-04 17:24

"Thomas" <thomasFJERNDette@tunet.dk> writes:

> okay.. det jeg egentlig ville var ved hjælp at JacaScript at centrere et
> objekt i browservinduet. Dette ville jeg gøre til dels med screen.height og
> screen.width og ved at jeg kender det objekt der skal centreres højde og
> bredde.

Det er en meget dårlig ide at bruge screen.width/height til at
centrere efter. Det der er relevant er browservinduets størrelse, ikke
andet.

var root = (document.compatMode=="CSS1Compat" &&
document.documentElement) || document.body;
var width = window.innerWidth || root.clientWidth;
var height = window.innerHeight || root.clientHeight;

> efter et lille regnestykke ville jeg så sætte en
> document.body.marginLeft og document.body.marginTop

Hvis det er det eneste på siden, og du kender størrelsen, så kan det
gøres nemmere, fx med ren CSS:

Hvis elementet fx er 200px * 150px, så prøv:
---
<style type="text/css">
.center {
position: absolute;
left: 50%;
top: 50%;
margin-left: -100px; /* minus halvdelen af bredden */
margin-top: -75px; /* minus halvdelen af højden */
width: 200px;
height: 150px;
}
</style>
....
<body>
<div class="center"> blablabla </div>
</body>
---

> Kand det lade sig gøre at gøre det på denne måde.. jeg kan ikke umiddelbart
> få det til at virke...

Med margintop:

var bodystyle = document.body.style || document.body; // fejler i NS 4
bodystyle.marginLeft = (width - elementWidth)>>1;
bodystyle.marginTop = (height - elementHeight)>>1;

Det er bare ikke den nemmeste metode.

/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste