misterunknown: Bildvergrößerung

Moin,

ich habe auf meiner Seite per Javascript eine Funktion geschrieben, die ein Bild vergrößert:

<script type="text/javascript">  
<!--  
var zon = 0;  
function zeigbild(objid, objname) {  
ref = document.getElementById(objid);  
var val = document.images[objname];  
if(zon!=1){  
zon = 1;  
ref.style.left = "-200px";  
ref.style.top = "-200px";  
ref.style.width = val.width+400+ "px";  
}  
else{  
zon=0;  
ref.style.left = "0px";  
ref.style.top = "0px";  
ref.style.width = val.width-400+"px";  
}  
}  
-->  
</script>

Weiter unten ist dann das Bild deklariert:

<a href=# onclick="zeigbild(12, 'bla');"><img style="position:relative;" id=12 name="bla" src=http://www.rgee.de/data/DSC04358.JPG width=100%></a>

Mein Problem ist, dass wenn das Bild vergößert wird, auch der Bereich in dem es liegt mit vergrößert wird. Es lässt sich schlecht beschreiben, deshalb seht es euch selbst an:
http://misterunknown.de/index.php?site=tu
Wenn man dort auf das Bild klickt, verlängert sich auch der mittlere Bereich und das will ich verhindern.

Grüße Marco

  1. Grüße,
    dann nimm dass aus dem "fluss" durch entsprechende positonierung und/oder "kindheit" ^^
    MFG
    bleicher

    --
    __________________________-

    FirefoxMyth
    1. Moin,

      Grüße,
      dann nimm dass aus dem "fluss" durch entsprechende positonierung und/oder "kindheit" ^^

      Wie meinst du das? Keine Ahnung, was "Kindheit" in dem Zusammenhang bedeutet...

      Grüße Marco

  2. Hallo misterunknown,

    12 ist eine ungültige ID. IDs dürfen nicht mit Ziffern beginnen.

    Das Name-Attribut ist überflüssig. Warum willst du auf das Bild einmal per ID und einmal per Name zugreifen?

    Zu deinem Problem: Gib dem umgebenden Element eine feste Größe und stelle overflow auf den passenden Wert, ich glaube hidden wäre gut.

    Gruß, Jürgen

    1. Hallo misterunknown,
      12 ist eine ungültige ID. IDs dürfen nicht mit Ziffern beginnen.

      Oh, dann ändere ich das mal.

      Das Name-Attribut ist überflüssig. Warum willst du auf das Bild einmal per ID und einmal per Name zugreifen?

      Wenn ich auf die Größe des Bildes per
       -> document.images[id].width
      zugreife, kommen falsche Werte heraus, jedenfalls bei mir...

      Zu deinem Problem: Gib dem umgebenden Element eine feste Größe und stelle overflow auf den passenden Wert, ich glaube hidden wäre gut.

      Das versuch ich mal.

      Gruß, Jürgen

      1. Hallo misterunknown,

        -> document.images[id].width

        das ist ja auch deiner Phantasie entsprungen. Wie man über die ID auf Elemente zugreifen kann, weist du ja schon.

        Gruß, Jürgen

        1. Hallo misterunknown,
          das ist ja auch deiner Phantasie entsprungen. Wie man über die ID auf Elemente zugreifen kann, weist du ja schon.

          Ja, das weiß ich, aber die getElementById-Methode liefert keine Eigenschaften im Bezug auf die Breite oder Höhe. Das heißt:
          "document.getElementById(objid).width" gibt nur Null aus und
          "document.images[objid]" ist auch nicht definiert (laut Fehlerkonsole) und eine andere Methode die Größe des Bildes festzustellen kenne ich nicht.

          Grüße Marco

          1. Grüße,
            benutze tools wie Firefly um zu sehen WAS dein code eigentlich so macht und variablenwerte "live" zu sehen^^

            MFG
            bleicher

            --
            __________________________-

            FirefoxMyth
            1. Grüße,
              benutze tools wie Firefly um zu sehen WAS dein code eigentlich so macht und variablenwerte "live" zu sehen^^

              Hm, wo krieg ich das Tool her? Ich hab gegooglet aber nur Mist gefunden...

              Grüße Marco

              1. Hallo,

                benutze tools wie Firefly um zu sehen WAS dein code eigentlich so macht und variablenwerte "live" zu sehen^^
                Hm, wo krieg ich das Tool her? Ich hab gegooglet aber nur Mist gefunden...

                kann ich mir denken - vermutlich ist Firefly eine Kreuzung aus Firebug und Dragonfly. ;-)

                Ciao,
                 Martin

                --
                Hannes würfelt abends immer, ob er den Abend mit seiner Frau zuhause verbringt oder in die Kneipe geht. Wenn er eine 6 würfelt, geht er in die Kneipe.
                Gestern musste er 37mal würfeln.
                Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
                1. benutze tools wie Firefly um zu sehen WAS dein code eigentlich so macht und variablenwerte "live" zu sehen^^
                  Hm, wo krieg ich das Tool her? Ich hab gegooglet aber nur Mist gefunden...

                  kann ich mir denken - vermutlich ist Firefly eine Kreuzung aus Firebug und Dragonfly. ;-)

                  Ich danke euch. Hab Firebug installiert. Auf Opera steh ich nicht so, auch weil der unter Linux noch nicht so stabil wie der Feuerfuchs laufen soll.

                  Grüße Marco

                  1. Hallo,

                    Hab Firebug installiert.

                    wirst du vermutlich nicht bereuen.

                    Auf Opera steh ich nicht so, auch weil der unter Linux noch nicht so stabil wie der Feuerfuchs laufen soll.

                    Kann ich nicht sagen - ich benutze auch unter Ubuntu überwiegend Opera, Firefox nur wenn es denn sein muss. Beispielsweise weigert sich Opera auf Ubuntu jaunty (lucid noch nicht getestet) standhaft, die installierte JVM zur Kenntnis zu nehmen und zu nutzen, so dass ich für Elster Online doch den FF verwenden muss. Aber mögen? Nö, gefallen hat mir Firefox nur in den ganz frühen Vorabversionen (die 0.9.3 hatte ich eine Weile in Betrieb, die war gut). Seit keine Null mehr als Hauptversionsnummer dasteht, leidet er an fortschreitender Fettleibigkeit und wird zunehmend zur Schlafmütze. Okay, ich will fair sein - seit Version 3 ist wieder spürbare Besserung eingetreten.
                    Von dem, was ich mir eigentlich wünsche (nämlich einen schlanken und schnellen Browser ohne unnötigen Ballast), ist er aber immer noch weit entfernt.

                    So long,
                     Martin

                    --
                    Zwei Kumpels sitzen vor dem Computer. "Welche Suchmaschine beutzt du eigentlich meistens?" - "Prima Vera." - "Hmm, kenn' ich gar nicht." Dann geht die Tür auf: "Schatz ich habe deine Sonnenbrille wiedergefunden!" - "Prima, Vera!"
                    Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
                    1. Hallo,
                      Kann ich nicht sagen - ich benutze auch unter Ubuntu überwiegend Opera, Firefox nur wenn es denn sein muss. Beispielsweise weigert sich Opera auf Ubuntu jaunty (lucid noch nicht getestet) standhaft, die installierte JVM zur Kenntnis zu nehmen und zu nutzen, so dass ich für Elster Online doch den FF verwenden muss. Aber mögen? Nö, gefallen hat mir Firefox nur in den ganz frühen Vorabversionen (die 0.9.3 hatte ich eine Weile in Betrieb, die war gut). Seit keine Null mehr als Hauptversionsnummer dasteht, leidet er an fortschreitender Fettleibigkeit und wird zunehmend zur Schlafmütze. Okay, ich will fair sein - seit Version 3 ist wieder spürbare Besserung eingetreten.

                      Wenn ich nur mal schnell was nachgucken will, dann nehm ich den Epiphany.
                      Kann schon sein, dass Opera prinzipiell funktioniert, aber da bin ich zu faul zum Umsteigen. Wobei ich nicht Ubuntu sondern Fedora habe.

                      Von dem, was ich mir eigentlich wünsche (nämlich einen schlanken und schnellen Browser ohne unnötigen Ballast), ist er aber immer noch weit entfernt.

                      Ich wollte mir mal den neuen Chrome angucken, auch wenn er vom Internetriesen Google kommt, aber er soll extrem schnell und extrem erweiterbar, von Haus aus aber recht schlank sein. Und das finde ich interessant.

                      Grüße Marco

                      1. Hi,

                        Nö, gefallen hat mir Firefox nur in den ganz frühen Vorabversionen (die 0.9.3 hatte ich eine Weile in Betrieb, die war gut). Seit keine Null mehr als Hauptversionsnummer dasteht, leidet er an fortschreitender Fettleibigkeit und wird zunehmend zur Schlafmütze. Okay, ich will fair sein - seit Version 3 ist wieder spürbare Besserung eingetreten.
                        Wenn ich nur mal schnell was nachgucken will, dann nehm ich den Epiphany.

                        den habe ich, ehrlich gesagt, noch nie probiert; ich kenne ihn nur dem Namen nach.

                        Von dem, was ich mir eigentlich wünsche (nämlich einen schlanken und schnellen Browser ohne unnötigen Ballast), ist er aber immer noch weit entfernt.
                        Ich wollte mir mal den neuen Chrome angucken, auch wenn er vom Internetriesen Google kommt, aber er soll extrem schnell und extrem erweiterbar, von Haus aus aber recht schlank sein. Und das finde ich interessant.

                        Ja, schlank und sehr schnell - das ist auch das, was ich schon mehrmals über Chrome gelesen habe. Die Tatsache, dass er von Google kommt, also einem Unternehmen, dem ich nicht weiter traue, als ich in einer nebligen schwarzen Nacht sehen kann, hält mich bisher aber auch davon ab.

                        Ciao,
                         Martin

                        --
                        Soziologen sind nützlich, aber keiner will sie haben.
                        Bei Informatikern ist es gerade umgekehrt.
                        Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
                        1. [latex]Mae  govannen![/latex]

                          Ja, schlank und sehr schnell - das ist auch das, was ich schon mehrmals über Chrome gelesen habe. Die Tatsache, dass er von Google kommt, also einem Unternehmen, dem ich nicht weiter traue, als ich in einer nebligen schwarzen Nacht sehen kann, hält mich bisher aber auch davon ab.

                          Inwiefern? Der Quellcode von Chrome ist offen verfügbar. Mich stört die mangelnde Konfigurierbarkeit und die fehlende Möglichkeit (zumindest bei der letzten Version, die ich installiert habe; wird mal wieder Zeit) ein beliebiges Installationsverzeichnis angeben zu können; aber um mal eben was nachzuschauen, ohne Opera mit seinen ~50 Tabs starten zu müssen, reicht es.

                          Cü,

                          Kai

                          --
                          Dank Hixies Idiotenbande geschieht grade eben wieder ein Umdenken in Richtung "Mess up the Web". (suit)
                          Foren-Stylesheet Site Selfzeug JS-Lookup
                          SelfCode: sh:( fo:| ch:? rl:( br:< n4:( ie:{ mo:| va:) js:| de:> zu:) fl:( ss:| ls:?
                          1. Hallo,

                            [Chrome] Die Tatsache, dass er von Google kommt, also einem Unternehmen, dem ich nicht weiter traue, als ich in einer nebligen schwarzen Nacht sehen kann, hält mich bisher aber auch davon ab.
                            Inwiefern? Der Quellcode von Chrome ist offen verfügbar.

                            ja, aber AFAIK ist Google Chrome nicht identisch mit Chromium, sondern baut nur darauf auf. Was die Burschen von Google noch so alles dranflanschen, weiß niemand.

                            aber um mal eben was nachzuschauen, ohne Opera mit seinen ~50 Tabs starten zu müssen, reicht es.

                            Nanu? Bei mir startet Opera "nackt", also ohne ein einziges geöffnetes Tab. Alles andere fände ich auch extrem lästig.

                            Ciao,
                             Martin

                            --
                            Wenn du beim Kochen etwas heißes Wasser übrig hast, friere es ein.
                            Heißes Wasser kann man immer gebrauchen.
                            Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
                            1. [latex]Mae  govannen![/latex]

                              [Chrome] Die Tatsache, dass er von Google kommt, also einem Unternehmen, dem ich nicht weiter traue, als ich in einer nebligen schwarzen Nacht sehen kann, hält mich bisher aber auch davon ab.
                              Inwiefern? Der Quellcode von Chrome ist offen verfügbar.

                              ja, aber AFAIK ist Google Chrome nicht identisch mit Chromium, sondern baut nur darauf auf.

                              Das ist das Verzeichnis von Chrome, nicht Chromium. Chrome ist ein Teil des Chromium-Projektes. Und jeder kann den theoretisch selber aus diesen Dateien zusammenbasteln. Wäre da zusätzliches Zeug bei, würde das sehr schnell aufgefallen. Hey, wenn sogar Verschwörungs-Fans wie Fefe Chrome nutzen :)

                              aber um mal eben was nachzuschauen, ohne Opera mit seinen ~50 Tabs starten zu müssen, reicht es.

                              Nanu? Bei mir startet Opera "nackt", also ohne ein einziges geöffnetes Tab. Alles andere fände ich auch extrem lästig.

                              Es ist extrem lästig, Seiten, die man ohnehin täglich nutzt, jedes Mal wieder aufzurufen. Daher bleiben die als angehefteter Tab ständig stehen. Sind ca. 10-15 Stück. Was den Rest betrifft ... hauptsächlich Blogeinträge und Tutorials zu Javascript- und PHP-Techniken, die ich mal _irgendwann_ lesen will .. nur eiere ich jetzt seit mindestens 10 Monaten komplett lustlos herum und daher sammelt sich so einiges an :(

                              Cü,

                              Kai

                              --
                              Dank Hixies Idiotenbande geschieht grade eben wieder ein Umdenken in Richtung "Mess up the Web". (suit)
                              Foren-Stylesheet Site Selfzeug JS-Lookup
                              SelfCode: sh:( fo:| ch:? rl:( br:< n4:( ie:{ mo:| va:) js:| de:> zu:) fl:( ss:| ls:?
                              1. Moin,

                                Der Quellcode von Chrome ist offen verfügbar.
                                ja, aber AFAIK ist Google Chrome nicht identisch mit Chromium, sondern baut nur darauf auf.
                                Das ist das Verzeichnis von Chrome, nicht Chromium. Chrome ist ein Teil des Chromium-Projektes. Und jeder kann den theoretisch selber aus diesen Dateien zusammenbasteln. Wäre da zusätzliches Zeug bei, würde das sehr schnell aufgefallen.

                                ah ja, okay.

                                Hey, wenn sogar Verschwörungs-Fans wie Fefe Chrome nutzen :)

                                Kenn ich nicht.

                                Bei mir startet Opera "nackt", also ohne ein einziges geöffnetes Tab. Alles andere fände ich auch extrem lästig.
                                Es ist extrem lästig, Seiten, die man ohnehin täglich nutzt, jedes Mal wieder aufzurufen. Daher bleiben die als angehefteter Tab ständig stehen.

                                Nicht dass ich dir das ausreden will - aber ich kann diesem Prinzip nichts abgewinnen. Irgendwelche Dokumente "auf Verdacht" öffnen, weil ich sie wahrscheinlich sowieso irgendwann im Lauf des Tages brauche? Dann müsste ich ja konsequenterweise auch Programme wie Word, Excel, VLC, Avidemux, Freecell und Deepburner im Voraus starten, wenn ich den (Windows-)PC hochfahre.
                                Nö, ich halte allgemein nichts von diesen Preload-Mechanismen, egal ob sie offensichtlich oder im Hintergrund stattfinden. Ich möchte, dass ein Dokument in dem Moment angefordert/geöffnet wird, wenn ich es brauche (dann sind auch ein paar Sekunden Verzögerung in Ordnung). Danach kann ich dann immer noch entscheiden, ob ich es sofort wieder schließe oder einfach mal offen lasse.

                                nur eiere ich jetzt seit mindestens 10 Monaten komplett lustlos herum und daher sammelt sich so einiges an :(

                                Lustlos? Hmm, woran liegt's? Ich kenne Leute, die permanente "keine Zeit" haben, das zu tun, was sie eigentlich gern tun würden - aber lustlos?  )-:

                                Ciao,
                                 Martin

                                --
                                Letztlich basiert alles auf dem Feuer, dem Rad, der Eins und der Null.
                                  (Gernot Back)
                                Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
                                1. [latex]Mae  govannen![/latex]

                                  Hey, wenn sogar Verschwörungs-Fans wie Fefe Chrome nutzen :)

                                  Kenn ich nicht.

                                  jepp.

                                  Bei mir startet Opera "nackt", also ohne ein einziges geöffnetes Tab. Alles andere fände ich auch extrem lästig.
                                  Es ist extrem lästig, Seiten, die man ohnehin täglich nutzt, jedes Mal wieder aufzurufen. Daher bleiben die als angehefteter Tab ständig stehen.

                                  Nicht dass ich dir das ausreden will - aber ich kann diesem Prinzip nichts abgewinnen. Irgendwelche Dokumente "auf Verdacht" öffnen, weil ich sie wahrscheinlich sowieso irgendwann im Lauf des Tages brauche?

                                  Nö, ich weiß, daß ich diese Seiten ein bzw. bei vielen sogar mehrfach bis häufig täglich anschauen werde (z.B. SelfHTML, 2-3 Blogs auch oder Twitter, das ich als fast reines Info-Medium benutze). Da fände ich es überaus nervig, die Seite jedes mal erneut aufrufen zu lassen. So wähle ich den Tab, drücke F5 und fange an zu lesen.

                                  Dann müsste ich ja konsequenterweise auch Programme wie Word, Excel, VLC, Avidemux, Freecell und Deepburner im Voraus starten, wenn ich den (Windows-)PC hochfahre.

                                  Nicht alles, was ein Vergleich sein soll, hinkt auch. Manchmal ist es schon eine Amputation und  man braucht schon einen Rollstuhl :)

                                  Nö, ich halte allgemein nichts von diesen Preload-Mechanismen, egal ob sie offensichtlich oder im Hintergrund stattfinden. Ich möchte, dass ein Dokument in dem Moment angefordert/geöffnet wird, wenn ich es brauche (dann sind auch ein paar Sekunden Verzögerung in Ordnung). Danach kann ich dann immer noch entscheiden, ob ich es sofort wieder schließe oder einfach mal offen lasse.

                                  Wozu habe ich Tabs im Browser, wenn ich alle Seiten ohnehin wieder schließe und dann später tw. mehrfach wieder aufrufe? Klingt nicht sehr logisch. Aber jeder so, wie er mag.

                                  nur eiere ich jetzt seit mindestens 10 Monaten komplett lustlos herum und daher sammelt sich so einiges an :(

                                  Lustlos? Hmm, woran liegt's? Ich kenne Leute, die permanente "keine Zeit" haben, das zu tun, was sie eigentlich gern tun würden - aber lustlos?  )-:

                                  Hat einige Gründe, allerdings ist das nichts fürs offene Forum.

                                  Cü,

                                  Kai

                                  --
                                  Dank Hixies Idiotenbande geschieht grade eben wieder ein Umdenken in Richtung "Mess up the Web". (suit)
                                  Foren-Stylesheet Site Selfzeug JS-Lookup
                                  SelfCode: sh:( fo:| ch:? rl:( br:< n4:( ie:{ mo:| va:) js:| de:> zu:) fl:( ss:| ls:?
              2. Grüße,

                Hm, wo krieg ich das Tool her? Ich hab gegooglet aber nur Mist gefunden...

                http://www.opera.com/dragonfly/

                man nehme vernünftige Browser (Opera) Unter Hauptmenü->Seite->entwicklerTools :)

                ich persönlich schwöre drauf, man fängt damit so nette fehler wie "unerwartete variablenwerte" und kann auch unbekannte eigenschaften der objecte rausfinden^^ experementier damit rum - das kann echt viel.
                MFG
                bleicher

                --
                __________________________-

                FirefoxMyth
        2. Hallo,

          -> document.images[id].width
          das ist ja auch deiner Phantasie entsprungen.

          keineswegs, die images-Collection ist einer der einfachsten Wege, um auf img-Elementobjekte zuzugreifen.

          Das Problem ist hier eher die ungültige, rein numerische ID. Mit id="12" konvertiert Javascript das nämlich erst in eine Zahl und sieht dann:

          document.images[12].width

          Also will der JS-Interpreter hier auf das Bild mit dem Index 12 zugreifen - sehr unwahrscheinlich, dass das gerade das gewünschte ist. Mit gültigen IDs, die also mit einem Buchstaben beginnen, käme der Parser nicht auf die Idee, sie in eine Zahl zu wandeln. Dann funktioniert das auch.

          Ciao,
           Martin

          --
          Verliebt:    Er spricht, sie lauscht.
          Verlobt:     Sie spricht, er lauscht.
          Verheiratet: Beide sprechen, und die Nachbarn lauschen.
          Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
          1. Hallo Der,

            keineswegs, die images-Collection ist einer der einfachsten Wege, um auf img-Elementobjekte zuzugreifen.

            danke für die Info. Bisher dachte ich, das geht nur über die Nummer oder den Namen.

            Gruß, Jürgen