[DHTML+JS] bewegend divje probs

Pagina: 1
Acties:

  • PhoneTech
  • Registratie: Mei 2000
  • Laatst online: 16-09 15:46
Hi all,

Ik heb het volgende probleem. Ik heb het voor elkaar gekregen dat ik 1 DIVje kan laten bewegen. Nu wil ik er meerdere individueel laten bewegen. Ik ben van de code uitgegaan voor 1 DIVje maar ik krijg hem maar niet omgebouwd naar meerdere DIVjes...

Dit is de code
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<html>
<head>
<title>Sliding menu</title>
<script language="JavaScript">
<!--
ns4 = (document.layers)? true:false
ie4 = (document.all)? true:false
function slide_left(strknop)
 {  
     if (ns4) knop = document.strknop
    if (ie4) knop = strknop.style
    knop.xpos = parseInt(knop.left)

    if (knop.xpos < 300) {
        knop.xpos += 5
        knop.left = knop.xpos
        setTimeout("slide_left(knop)",20)
    }
}
//-->
</SCRIPT>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<DIV ID="Knop1" STYLE="position:absolute; left:50px; top:70px; knop-background-color:red; background-color:red;" onMouseOver="javascript:slide_left('knop1');">
Knop1
</DIV>
<DIV ID="Knop2" STYLE="position:absolute; left:50px; top:100px; knop-background-color:red; background-color:red;" onMouseOver="javascript:slide_left('knop1');">
Knop2
</DIV>
</BODY>
</HTML>

Wat dus eigenlijk de bedoeling is, dat als je met de muis over Knop1 gaat, deze dan een x aantal pixels beweegt naar rechts. En als je er op klikt daar ook blijft staan.
En als je met de muis er af gaat, dan moet hij weer terug springen. Wie zou mij hier mee kunnen helpen?

  • PhoneTech
  • Registratie: Mei 2000
  • Laatst online: 16-09 15:46
any1?

  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

even een aantal puntjes waar je op moet letten:

1. Je stuurt een string mee aan de functie. Dit is dus geen layer-object, je zal deze dus eerst moeten "evallen".
2. JS objecten zijn case-sensitive.
3. Probeer je layers in een <style></style> te definieren, dan weet je iig zeker dat je minder problemen tegen komt (in NS bijv.).

Onderstaande rewrite van je functie zit al meer in de richting van wat je wilt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
function slide_left(strknop)
{
    if (ns4) knop = document.strknop;
    else if (ie4) knop = eval(strknop+'.style');
    knop.xpos = parseInt(knop.left);
    if (knop.xpos < 300)
    {
        knop.xpos += 5;
        knop.left = knop.xpos;
        setTimeout("slide_left('"+strknop+"')", 20);
    }
}

succes met de rest.

* Annie gaat nu lekker :Z

Today's subliminal thought is:


  • PhoneTech
  • Registratie: Mei 2000
  • Laatst online: 16-09 15:46
[quote]Op zondag 18 november 2001 04:16 schreef Annie het volgende:
code:
1
2
3
4
5
6
7
8
9
10
11
12
function slide_left(strknop)
{
    if (ns4) knop = document.strknop;
    else if (ie4) knop = eval(strknop+'.style');
    knop.xpos = parseInt(knop.left);
    if (knop.xpos < 300)
    {
        knop.xpos += 5;
        knop.left = knop.xpos;
        setTimeout("slide_left('"+strknop+"')", 20);
    }
}

Ik krijg nu helaas een foutmelding dat knop1 niet gedefineerd is...Ik zit nu echt vast...wie kan mij hier mee helpen?

  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

heb je nog steeds dit in je code staan?
code:
1
<DIV ID="Knop1" ...

maak daar dan eens "knop1" van

Today's subliminal thought is:


  • PhoneTech
  • Registratie: Mei 2000
  • Laatst online: 16-09 15:46
Ik was weer lekker |:( bezig :) idd...die Knop1 moest knop1 zijn....Thnx
Pagina: 1