Hallo !!
Wer weiss rat ? Bin Neuling und habe auf meinem Projekt die EXT: PMK SlimBox eingebaut. Dann habe ich versucht diese funktionierende Lightbox per Constants zu kofigurieren, aber meine Bilder werden immer in der Grösse in der ich diese hochgeladen habe ausgegeben. Wer kann mir da helfen.
Hier die Constants :
plugin.pmkslimbox.initialHeight = 400
plugin.pmkslimbox.initialWidth = 300
plugin.pmkslimbox.slimBoxmaxH = 500
plugin.pmkslimbox.slimBoxMaxW = 400
plugin.pmkslimbox.defaultIframeHeight = 500
plugin.pmkslimbox.defaultIframeWidth = 500
Ich hatte noch andere Befehle wie ...navigable, ...plugin.pmkslimbox.enablePrintButton, aber diese dürften für die Grössenangabe nicht relevant sein.
Was habe ich falsch gemacht ? Brauche ich noch zusätzlich ein TS Setup ? Da meine SlimBox grundsätzlich funktioniert, bin ich davon ausgegangen, dass es nicht notwendig ist !!
Ich danke für jede Hilfe. Bin jetzt schon seit einigen Tagen dran, komme aber nicht auf eine Lösung, die ich selber umsetzen kann.
Denn ich habe im Netz eine Lösungsansatz gefunden, aber für mich nicht umsetzbar. Zu hohes Niveau im Moment. Hier ein Auszug :
Schritt 1:
Im Bereich der globalen Variablen folgende 2 Zeilen einfügen:
var lb_max_width = 800; //Hier die feste Breite eingeben (99999 für unbegrenzt)
var lb_max_height = 600; //Hier die feste Hoehe eingeben (99999 für unbegrenzt)Schritt 2:
Ungefähr in Zeile 444 beginnt die Funktion changeImage.
Dort die Zeile “var dims = lb_scale_dims(imgPreloader.width, imgPreloader.height, lb_max_width, lb_max_height);” suchen und dadrunter folgende 3 Zeilen einfügen:Element.setWidth('lightboxImage', dims[0]);
Element.setHeight('lightboxImage', dims[1]);
myLightbox.resizeImageContainer(dims[0], dims[1]);Nun befindet sich unter den 3 Zeilen nochmal eine Zeile , die die Funktion myLightbox.resizeImageContainer() aufruft. Also folgende Zeile einfach auskommentieren oder löschen:
myLightbox.resizeImageContainer(imgPreloader.width, imgPreloader.height);
Schritt 3:
Dann noch unsere neuen Funktionen um Skalieren des Bilder auf die vorgegebene Größe. Die beiden Funktionen dann so ziemlich am Ende der lightbox.js platzieren, genau zwischen der Funktion pause() und initLightbox():
function lb_scale_dims(orig_w, orig_h, max_w, max_h)
{
var scale = lb_scale_rate(orig_w, orig_h, max_w, max_h);
var new_w = Math.round(scale*orig_w); new_h = Math.round(scale*orig_h);
if (new_w <; 1) { new_w = 1; } if (new_h <; 1) { new_h = 1; }
return Array(new_w, new_h);
}
function lb_scale_rate(orig_w, orig_h, max_w, max_h) {
var scale1 = 0; var scale2 = 0;
if (orig_w > max_w) { scale1 = (orig_w - max_w) / orig_w; }
if (orig_h > max_h) { scale2 = (orig_h - max_h) / orig_h; }
var scale = (scale1>scale2)?scale1:scale2;
return (1-scale);
}Danach sollte alles funktionieren - viel Spaß!
Dabei miüssen in der EXT die globalen Werte angepasst werden, aber da es schon mal nicht die gleiche EXT ist und ich diese Datei mit den globalen Werten nicht finden konnte, nun nur noch der Hilferuf übrig bleibt !!
Danke für jede Hilfe !!
Grüsse Marijo