Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> dopasowanie obrazu do popup
mokry
post
Post #1





Grupa: Zarejestrowani
Postów: 374
Pomógł: 23
Dołączył: 3.06.2006
Skąd: Katowice

Ostrzeżenie: (0%)
-----


kiedys na jakiejs stronce widzialem okienko popup dopasowujace sie do rozmiarow obrazu...
oczywiscie zapomnialem adresu i stap pytanie:
czy ktos sie z tym spotkal i jesli tak to gdzie/jaki kod?

na pewno bylo to w js bo jeszcze zagladalem do zrodel.
niestety moj organiczny RAM ni prcuje czase na najwyzszej czestotliwosci... :/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mokry
post
Post #2





Grupa: Zarejestrowani
Postów: 374
Pomógł: 23
Dołączył: 3.06.2006
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Nie ma możliwości zczytania rozmiarów obrazu przez samo JS?
W php nie mam żadnego problemu zrobić coś takiego... Ale widziałem rozwiązanie i wydawało mi się że było w samym JS...

Poprzeglądam jeszcze biblioteki lightbox'a... On nie korzysta z php, a ładnie dopasowuje się do zdjęcia...

Kod
    resizeImageContainer: function( imgWidth, imgHeight) {

        // get current height and width
        this.wCur = Element.getWidth('outerImageContainer');
        this.hCur = Element.getHeight('outerImageContainer');

        // scalars based on change from old to new
        this.xScale = ((imgWidth  + (borderSize * 2)) / this.wCur) * 100;
        this.yScale = ((imgHeight  + (borderSize * 2)) / this.hCur) * 100;

        // calculate size difference between new and old image, and resize if necessary
        wDiff = (this.wCur - borderSize * 2) - imgWidth;
        hDiff = (this.hCur - borderSize * 2) - imgHeight;

        if(!( hDiff == 0)){ new Effect.Scale('outerImageContainer', this.yScale, {scaleX: false, duration: resizeDuration, queue: 'front'}); }
        if(!( wDiff == 0)){ new Effect.Scale('outerImageContainer', this.xScale, {scaleY: false, delay: resizeDuration, duration: resizeDuration}); }

        // if new and old image are same size and no scaling transition is necessary,
        // do a quick pause to prevent image flicker.
        if((hDiff == 0) && (wDiff == 0)){
            if (navigator.appVersion.indexOf("MSIE")!=-1){ pause(250); } else { pause(100);}
        }

        Element.setHeight('prevLink', imgHeight);
        Element.setHeight('nextLink', imgHeight);
        Element.setWidth( 'imageDataContainer', imgWidth + (borderSize * 2));

        this.showImage();
    },


EDIT:
Z lightbox'a wyciągnąłem taki oto kod powyżej... Myśle że tutaj coś jest, ale nie jestem pewien.
Na JS niestety nie znam się poza funkcją writeln (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
...?

Ten post edytował mokry 14.01.2007, 11:28:27
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 14:37