Div um 10% vergrößern/verkleinern mit javascript

  • Ich will ein Div um jeweils 10% vergrößern/verkleinern mit javascript

    es soll auch möglich sein mehrmal auf +10% klicken zu können.
    Wenn ein Div width 400px hat dann hat $10_width 40px.
    Wenn man dann mehrmal auf +10% klickt soll sich die größe so ändern: 400->440->480->520->560...
    die höhe soll sich ein gleichen 10% schritten mit vergrößern/verkleinern

    weiß nicht warum mein script nicht funktioniert.

    Könnt ihr mir weiterhelfen???

  • Wo soll denn die $10_width-Variable herkommen? Steckt da ein PHP-Script dahinter, das das HTML erzeugt? Wenn ja, poste das mal bitte.
    Ansonsten überprüf nochmal die Syntax, '.-$10_width.px.' sieht irgendwie falsch aus, ich denke, das Apostroph müsste vor das px.

    Übrigens:

    Code
    document.getElementById ('game').style.width += width;


    macht genau das gleiche wie

    Code
    document.getElementById ('game').style.width = document.getElementById ('game').style.width + width;

    und ist kürzer.

    Information will frei verfügbar sein.

    Don't eat unpeeled hedgehogs.

  • += hatte ich auch schon ausprobiert, ging aber nicht

    ja, $10_width kommt aus php und ist nicht leer

    '.-$10_width.px.' stimmt, des gibt -40px aus, wenn die original größe 400 ist.

  • Ach, jetzt verstehe ich das ganze erst.
    Deine Funktion will zwei Zahlen von dir haben. "40px" ist jedoch eine Zeichenkette. D.h. es wird die Größe von dem Element genommen und versucht, dazu die Zeichenkette "40px" zu addieren, logisch, dass das nicht geht.

    Kurz ausgedrückt, mach das px in
    <a href="javascript:set_groeße ('.$10_width.px.', '.$10_height.px.')">+10%</a><br>
    weg.

    Information will frei verfügbar sein.

    Don't eat unpeeled hedgehogs.

  • urz ausgedrückt, mach das px in
    <a href="javascript:set_groeße ('.$10_width.px.', '.$10_height.px.')">+10%</a><br>
    weg.

    .px hab ich jetzt entfernt, hab aber nichts gebracht

  • Müsste jetzt so funktionieren. Von Verwendung von Sonderzeichen (ß) in Funktions- oder Variablennamen ist übrigens generell abzuraten, gibt evtl. Probleme.

    Edit: Sorry, hab das ganze an einem anderen Beispiel getestet. Statt 'team1' muss es natürlich 'game' heißen. Und synaptic unter mir hat natürlich recht.

    Evtl auch interessant: Dollar-Funktion.

    Dann kannst du statt document.getElementById einfach $ schreiben.
    Beispiel: $('game').

    Information will frei verfügbar sein.

    Don't eat unpeeled hedgehogs.

    2 Mal editiert, zuletzt von Afrael (7. Mai 2009 um 17:14) aus folgendem Grund: Falsche ID im Beispiel

  • nur so am rande erwähnt ;)

    wenn du immer um +10% eerhöst sieht das so aus :

    400 -> 440 -> 484 -> 532.4 -> ... usw.

  • dank dir, funktioniert super

    @Macrosdesign sry, wenn ich mich nicht ganz eindeutig ausgedrückt habe, es soll sich immer um 10% des start wertest vergrößern, verkleinern.


    kann geschlossen werden