/ 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
flytte element
Fra : Christian Hansen


Dato : 03-04-02 15:11

Hej igen

Hvordan flytter man et element/lag på sin side

Jeg har prøvet følgende:

document.getElementById(menuName).moveBy(x,y);

, hvor x,y markere positionen på websiden.

jeg har også forsøgt med moveTo() - den virker vist kun for
windowobjecter - og moveToAbsolute(). Ligeledes har jeg forsøgt at sætte
pageX og pageY, men ligegodt hjælper det.

Når jeg forsøger med metoderne/funktionerne får jeg fejlen "move* er
ikke en funktion. Det står der altså i min reference at det er og
ligeledes at de kan anvendes på et layerobject.

Please help.

MVH Christian


 
 
Christian Hansen (03-04-2002)
Kommentar
Fra : Christian Hansen


Dato : 03-04-02 16:19

Nu har jeg fundet ud af, at man i IE kan bruge style.pixelTop og
style.pixelLeft og tildele disse den ønskede værdi. Dette er dog ikke
standard ifølge min reference og virker da heller ikke i nn6.

Så jeg spørger stadig om, hvordan man gør det i NN6

MVH Christian


Christian Hansen wrote:

> Hej igen
>
> Hvordan flytter man et element/lag på sin side
>
> Jeg har prøvet følgende:
>
> document.getElementById(menuName).moveBy(x,y);
>
> , hvor x,y markere positionen på websiden.
>
> jeg har også forsøgt med moveTo() - den virker vist kun for
> windowobjecter - og moveToAbsolute(). Ligeledes har jeg forsøgt at sætte
> pageX og pageY, men ligegodt hjælper det.
>
> Når jeg forsøger med metoderne/funktionerne får jeg fejlen "move* er
> ikke en funktion. Det står der altså i min reference at det er og
> ligeledes at de kan anvendes på et layerobject.
>
> Please help.
>
> MVH Christian
>



Jonas Koch Bentzen (03-04-2002)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 03-04-02 16:52

Christian Hansen skrev:

> Nu har jeg fundet ud af, at man i IE kan bruge style.pixelTop og
> style.pixelLeft og tildele disse den ønskede værdi. Dette er dog ikke
> standard ifølge min reference og virker da heller ikke i nn6.
>
> Så jeg spørger stadig om, hvordan man gør det i NN6

Med standard-JavaScript kan man gøre det på følgende måde (utestet):

function flyt() {
for (i = 0; i < 25; i++) {
document.getElementById("test").style.left = i
}
}

--
Jonas Koch Bentzen

http://understroem.dk/

Christian Hansen (03-04-2002)
Kommentar
Fra : Christian Hansen


Dato : 03-04-02 20:25

Jonas Koch Bentzen wrote:

> Christian Hansen skrev:
>
>
>>Nu har jeg fundet ud af, at man i IE kan bruge style.pixelTop og
>>style.pixelLeft og tildele disse den ønskede værdi. Dette er dog ikke
>>standard ifølge min reference og virker da heller ikke i nn6.
>>
>>Så jeg spørger stadig om, hvordan man gør det i NN6
>>
>
> Med standard-JavaScript kan man gøre det på følgende måde (utestet):
>
> function flyt() {
> for (i = 0; i < 25; i++) {
> document.getElementById("test").style.left = i
> }
> }
>
>

Det synes jeg at jeg har prøvet, men det virker bare ikke.

spørgsmål:

Jeg vil flytte en tabel.

<table id="flytmig">
   <tr>
      <td>
         Indhold
      </td>
   </tr>
</table>


Det ville jeg jo tro, at man skulle kunne gøre vha.
document.getElementById("flytmig").style.left = x;
document.getElementById("flytmig").style.top = y;

hvor x og y er heltal.

Men det virker ikke.

I øvrigt kan jeg ikke se left og top som værende properties til
style-objektet i min javascript-reference ( 1.2) Måske er den ikke helt
ajourført.

MVH Christian


Stig Nygaard (03-04-2002)
Kommentar
Fra : Stig Nygaard


Dato : 03-04-02 20:08

Hej Christian


> Det ville jeg jo tro, at man skulle kunne gøre vha.
> document.getElementById("flytmig").style.left = x;
> document.getElementById("flytmig").style.top = y;
>
> hvor x og y er heltal.
>
> Men det virker ikke.

Hvis du bruger en !doctype som sætter N6 i "strict-mode", så virker det
kun hvis du putter enheder på, dvs:

document.getElementById("flytmig").style.left = x+"px";
document.getElementById("flytmig").style.top = y+"px";

Hvis det ikke er problemet, ville det være en god idé hvis du gav et
link til en testcase, så vi kan studere din kode i sin fuldhed.


Mvh. Stig
stig@rockland.dk
* Bedre (D)HTML ?! --> http://www.rockland.dk/stig/upghtml.html *


Christian Hansen (03-04-2002)
Kommentar
Fra : Christian Hansen


Dato : 03-04-02 22:33

Stig Nygaard wrote:


> Hvis du bruger en !doctype som sætter N6 i "strict-mode", så virker det
> kun hvis du putter enheder på, dvs:
>
> document.getElementById("flytmig").style.left = x+"px";
> document.getElementById("flytmig").style.top = y+"px";
>


hupti det virker nu. Ovenstående har helt sikkert været en del af
problemet, men for at få det til at virke, var jeg nød til at smide en
div omkring tabellen og så refererer til dens id i stedet for tabellens.
Det virker åbentbart ikke på tabeller alene i NS6 ( eller også forstår
jeg det bare ikke helt korrekt, hvilket sikkert snarere er tilfældet


Men tak for hjælpen.

MVH Christian

P.S. Jeg kan da lige fortælle, at det skal bruges i forbindelse med et
Open Source GPLet projekt jeg har gang i. Et CMS system, som allerede er
i anvendelse i 1 kommune samt på min arbejdsplads. Systemet præsenteres
søndag d. 14 april på linuxdag i Aalborg.


Stig Nygaard (03-04-2002)
Kommentar
Fra : Stig Nygaard


Dato : 03-04-02 22:05

Hej Christian


Christian Hansen wrote:
> hupti det virker nu. Ovenstående har helt sikkert været en del af
> problemet, men for at få det til at virke, var jeg nød til at smide en
> div omkring tabellen og så refererer til dens id i stedet for tabellens.
> Det virker åbentbart ikke på tabeller alene i NS6 ( eller også forstår
> jeg det bare ikke helt korrekt, hvilket sikkert snarere er tilfældet

Slår mig lige at du sikkert skal have en style="position: absolute"
(eller relative eller fixed) på din tabel før det virker. Det har du
sikkert på din DIV ?


Mvh. Stig
stig@rockland.dk
* Bedre (D)HTML ?! --> http://www.rockland.dk/stig/upghtml.html *


Christian Hansen (03-04-2002)
Kommentar
Fra : Christian Hansen


Dato : 03-04-02 23:09

Hej Stig

Stig Nygaard wrote:

> Slår mig lige at du sikkert skal have en style="position: absolute"
> (eller relative eller fixed) på din tabel før det virker. Det har du
> sikkert på din DIV ?


Det havde jeg også på min table. Det virker jo kun på positionerede
objekter

Jeg brugte nøjagtig samme id på tabellen som jeg gør nu på div. stylene
definere jeg i headersektionen af dokumentet.

Så hvorfor det ikke lige vil med table mangler jeg stadig en god
forklaring på, men da det virker fint med div, er det et luksusproblem nu.

MVH Christian


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

Månedens bedste
Årets bedste
Sidste års bedste