Bild je nach Proportion in der Größe anpassen

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Bild je nach Proportion in der Größe anpassen

    Hallo,
    ich möchte mit folgendem Script die Höhe bzw. Breite anpassen, sodass die Bilder immer in einen Rahmen von 250 X 250 passen. Die Bildproportionen ermittle ich über PHP und lese die Werte in Javascript ein.

    Funktioniert auch fast. Nur ein Problem gibt es noch:
    wenn ich die Bilder switche werden sie alsbald zum Quadrat verzerrt.

    Kann mir jemand da einen Tipp geben?

    Hier der Code:

    PHP Code:
    function ppc(){
            
    k--;
        if (
    0){
        
    2;}
            
    document.grossbild.src bilder[k];    
        if(
    formats[k] == 2
         {
            var 
    bildgroesse document.getElementById("bildformat"); 
              
    bildgroesse.style.width="250px";
        
    delete(bildgroesse);     } else {
        
    delete(bildgroesse);        var bildgroesse document.getElementById("bildformat"); 
              
    bildgroesse.style.height="250px";
         }
    }

    function 
    npc(){
          
    k++;
          if (
    2) {
          
    0; }
            
    document.grossbild.src bilder[k];
        if(
    formats[k] == 2
         {
        
    delete(bildgroesse);        var bildgroesse document.getElementById("bildformat"); 
              
    bildgroesse.style.width="250px";
         } else {
        
    delete(bildgroesse);        var bildgroesse document.getElementById("bildformat"); 
              
    bildgroesse.style.height="250px";
         }
    }

    function 
    change(tausch_bild_name,neues_bild_name)
                 {
                  
    window.document[tausch_bild_name].src "./upload/"+neues_bild_name+"";
                  
                 } </
    script>      <tr>
          <
    td width="250" height="250" align="center" style="border: solid 1px #D9974B;"><img src="./upload/2007121716270679.jpg"  id="bildformat" name="grossbild"></td
    Last edited by sanktusm; 18-05-2009, 19:04.

  • #2
    bitte poste den javascript-code, so wie ausgegeben wird. ohne das ganze php-gekröse, dann kann man es auch lesen.

    danke
    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Comment


    • #3
      bitte schöne

      sorry

      Comment


      • #4
        Hi,

        kannst Du bitte mal den Code bzgl. Struktur vernünftig formatieren, das kann ja kein Mensch lesen...

        Wo wird überhaupt welche dieser Funktionen aufgerufen?

        LG

        Comment


        • #5
          Formatierter Code

          PHP Code:
          function ppc(){ 
              
          k--; 
              if (
          0) { 
              
          2;
             } 
              
          document.grossbild.src bilder[k];     
              if(
          formats[k] == 2)  
               { 
                
          delete(bildgroesse); 
                var 
          bildgroesse document.getElementById("bildformat");  
                
          bildgroesse.style.width="250px"
                  } else { 
                
          delete(bildgroesse);        
                var 
          bildgroesse document.getElementById("bildformat");  
                
          bildgroesse.style.height="250px"
               } 

          Comment


          • #6
            Wenn Du Hilfe willst, solltest Du Dir mal ein bischen mehr Mühe geben. Niemand hat Lust, Dir alles aus der Nase zu ziehen und Du bist schliesslich nicht erst seit gestern hier. Also:

            Originally posted by kuddeldaddeldu View Post
            Wo wird überhaupt welche dieser Funktionen aufgerufen?
            Und was steht in diesen Arrays "bilder" und "formats", wie sieht die Funktion delete aus und warum wird die mit einer lokalen Variablen aufgerufen, bevor selbige überhaupt definiert ist?

            LG

            Comment


            • #7
              Originally posted by sanktusm View Post
              wenn ich die Bilder switche werden sie alsbald zum Quadrat verzerrt.
              Und was wundert dich daran ...?


              Im gezeigten Code setzt du entweder die Breite oder Höhe auf 250px - immer beim selben Bildobjekt.
              Nachdem sowohl der if- als auch der else-Zweig jeweils einmal durchlaufen wurden, kommt also was quadratisches dabei raus - hast du was anderes erwartet?
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Comment


              • #8
                wie kann ich das überschreiben? oder zurücksetzen?

                bin für jede Hilfe dankbar.

                Comment


                • #9
                  Das Image-Objekt von javascript gibt dir die Breite und Höhe eines Bildes
                  Code:
                  a = new Image();
                  a.src = "xxx";
                  if(a.height > 250 || a.width > 250){
                   if(a.width >= a.height){
                    imageobj.style.width = "250px";
                    imageobj.style.height = Math.round(a.height / a.width);
                   }else{
                    imageobj.style.height = "250px";
                    imageobj.style.width = Math.round(a.width / a.height);
                   }
                  }

                  Comment

                  Working...
                  X