Wow, das läuft schon mal super! Und so fix, danke dir!!
UND auch noch die Variante mit allen Bildern. Das hab ich heute gleich benutzt. Und auch den Zusatz gesehen, dass du auto -> fullsize mit eingebaut hattest, das konnte ich sofort einsetzen, weil ich nach Neustart vergessen hatte die Option von auto in fullsize zu verändern.
Der allergrößte Teil ist damit schon perfektioniert...
Wolfgang hat das Diashow-Skript für die Übersicht so gebaut, dass jedes Bild eine eigene Zeile bekommt, sehr hilfreich. Ich hab geschaut, ob ich deins selber anpassen kann, aber nee, nicht den leisesten Schimmer!
Und bisher benutze ich die Bilder doch meist doppelt so groß, also 1000px und 500px. Wolfgangs kann ich da abändern, aber deins bezieht sich ja auch darauf, oder nicht unbedingt?
Automatisierter Einbau von Bildern aus dem Dateiupload in den Multiple-Diashow-Skript
Höhenangabe der Bilder mit unterschiedlichen Werten:
Höhe sehr klein gewählt
Höhe zu groß gewählt
Höhe angepasst!
1 2 3 4 5
[slideshow=500px] [img_slides=250px=Höhe sehr klein gewählt]https://files.homepagemodules.de/b104774/pictures_u185_0925ba.jpg[/img_slides] [img_slides=450px=Höhe zu groß gewählt]https://files.homepagemodules.de/b104774/pictures_u149_9de116.jpg[/img_slides] [img_slides=281px=Höhe angepasst!]https://files.homepagemodules.de/b104774/pictures_u32_8289ae.jpg[/img_slides] [/slideshow]
Höhenangabe der Bilder mit "auto" Werten:
Höhe mit "auto"
Höhe mit "auto"
Höhe mit "auto"
1 2 3 4 5
[slideshow=350px] [img_slides=auto=Höhe mit "auto"]https://files.homepagemodules.de/b104774/pictures_u185_0925ba.jpg[/img_slides] [img_slides=auto=Höhe mit "auto"]https://files.homepagemodules.de/b104774/pictures_u149_9de116.jpg[/img_slides] [img_slides=auto=Höhe mit "auto"]https://files.homepagemodules.de/b104774/pictures_u32_8289ae.jpg[/img_slides] [/slideshow]
Breite der Diashow auf "auto" Werten:
Breite mit "auto"
Breite mit "auto"
Breite mit "auto"
1 2 3 4 5
[slideshow=auto] [img_slides=390px=Breite mit "auto"]https://files.homepagemodules.de/b104774/pictures_u185_0925ba.jpg[/img_slides] [img_slides=390px=Breite mit "auto"]https://files.homepagemodules.de/b104774/pictures_u149_9de116.jpg[/img_slides] [img_slides=390px=Breite mit "auto"]https://files.homepagemodules.de/b104774/pictures_u32_8289ae.jpg[/img_slides] [/slideshow]
Astrein, jetzt hab ich auch Breite/Höhe und den Rahmen verstanden. 'fullsize' passt eigentlich doch am besten zu unserm Forum und klappt, auch mobil (Rahmen war anders als laptop!).
Und das neue Skript mit den ganzen Variablen wird echt ein immer größerer Schatz!
Beim Test vom Einbau aller Dateien mit Bildbeschreibung gibts nur noch ein Fehlerchen: Ohne Beschreibung benutzt Wolfgang image_slid, aber mit Beschreibung: image_slides. (Nach Ergänzen in einem Texteditor hats dann geklappt.) (Beim Markieren bestimmter Dateien zum Einbau gibts ja nur ohne Beschreibung, dafür entsteht das Problem entsprechend nicht.)
Das vorige Problem - jedes Bild eine Zeile - ist ja perfektioniert. ✅
Und mein Rumrätseln was genau Text "17" oder "19" oder so bewirkt, hab ich selbst lösen können: Das sind die Zeichen zu Beginn des Bildnamens die entsprechend weggelöscht werden, in meinem Fall kann ich z.B. "11" für IMG_567890_ nehmen. Noch eine unschlagbare Idee!
Ich hab oft auch ca. 10 Zeichen hinten (" sn bv v2q") um zu kennzeichnen ob und wie ich ein Bild bearbeitet hab. Aber ich werd nicht fragen, ob das auch geht, , denn meist werd ich sowohl vorn als auch hinten drinnen lassen.
mein neuester Blog-Eintrag hat rund 10 Diashows untereinander., insgesamt 86 Bilder: klappt schon mal astrein, auch mobil keine Ausfälle.
Ich hab mit L2otbarts Skript einfach alle ohne Beschriftung reingeladen, und dann in diese 10 Diashows portioniert, indem ich /slideshow und slideshow immer wieder dazwischen gesetzt hab.
Da fällt mir gerade ein, dass ich das tatsächlich in eins machen kann, also /slideshow + Leerzeile(n) + slideshow, und die jeweilige Beschreibung der kommenden Diashow danach dazwischen setzen. Ich muss aber nochmal vergleichen, ob es dann nicht doch schneller ist alle ohne Diashow reinzuladen und die jeweiligen Gruppen markiere und in eine Diashow (ohne Beschriftung) umwandle. Gefühlt ist ersteres einfacher und schneller bei so ner Menge.
Zwei "Anmerkungen" sind vielleicht auch weniger wichtig:
1. Mobil bleiben die Pfeile nach rechts und links immer sichtbar. Richtig so? (Damit User erkennen, dass es eine Diashow ist?)
2. Im Moment sind diese Diashows Endlos-Schleifen ohne dass man sieht wann die Wiederholung beginnt.
Find ich eigentlich sehr sympathisch als jemand, der keine Lesezeichen in Büchern benutzt. Entweder weiß man was man schon gelesen / gesehen hat oder man sollte es nochmal lesen / anschauen.
Aber für die Lesezeichen-Nutzer... wär vielleicht ein Hinweis gut wann die Diashow zu Ende ist.
Als Workaround fällt mir ein, dass man bei beschrifteten Bildern durch die Beschriftung das erste und letzte Bild kennzeichnen kann. Man könnte sie so sogar (besser) durchnummerieren, gerne natürlich automatisch. Dann kann man andern sagen: Ich find Bild 13 am besten. (Lässt sich besser merken als IMG_13579 falls man die IMG Zahl drin lässt.)
wie eine Nummerierung aussehen könnte, müsste man erstmal per Hand an einem Beispiel ausprobieren. Bin sicher, dass dann auch automatisiert werden kann.
fullsize vs. auto hab ich getestet: geht beides ohne Fehler. Sollte ich trotzdem aus andern Gründen auto wählen? Hab ich erstmal überall drin gelassen.
Manuell hab ich mal alle Diashows wieder auf dem Blog-Eintrag 16.3. (inzwischen vorletzter) eingefügt: Bei den ersten beiden vor dem sonstigen Titel. Mit IMG_Nummer danach vielleicht etwas schwer sichtbar, aber geht auch find ich. Bei allen weiteren nur "1 von x". Das scheint im Moment für mich das sinnigste. Ein Bild besonders herausheben ginge ja manuell. Auch die beiden einzelnen mit "1 von 1" falls das wider Erwarten für irgendwas Sinn (z.B. Arbeitsflow oder nachträgliche Ergänzungen weiterer) macht...
let analyse=function(v1){ let v=v1.substr(0,v1.lastIndexOf(".")); //.jpg let r={d:"-",name:"--"}; r.name=char_corri(v.substr(x.opt[4])||" - ",false); return r;
const scrs="ScreenShot"; let dsplit=function(v){ return v.substr(6,2)+"."+v.substr(4,2)+"."+v.substr(0,4)+" " +v.substr(9,2)+":"+v.substr(11,2)+":"+v.substr(13,2) }
let sls500=function (s){ return `[slideshow=${x.opt[2]}]`+s+"\n[/slideshow]"; }
let slideshow=function (op,b){
let v=ta.value; let v_a=v_s="", v_e=v;
if (!document.getSelection){ alert("= \u274C dein Browser unterst\u00FCzt diese Funktion leider nicht. =\n"); } else if (ta.selectionStart< ta.selectionEnd){ v_a=v.substring(0,ta.selectionStart); v_s=v.substring(ta.selectionStart,ta.selectionEnd); v_e=v.substr(ta.selectionEnd); } else{ alert("= \u274C keinen selektierten Text erkannt. =\n"); return; }
const m1="]]", m2="[[Fil"; // let arr=v_s.split(m1+m2); let arr=v_s.split(/\]\]\s?\[\[Fil/);
if(b=="b"){ v_s=""; let nr=1,sl2=x.sl2.replace("]","es]"); for (let a of arr) { let r=/e:(.+?)\|/.exec(a); let fn=r[1]||"?"; let sl1=x.sl1.replace("=","es=").replace("]",`=${nr++}/${arr.length}: ${analyse(fn).name}]`); v_s+="\n"+sl1+(a.includes(m2)?"":m2) +a.replace("\n","")+(a.includes(m1)?"":m1)+sl2; } } else v_s="\n"+x.sl1 +arr.join(m1+x.sl2+"\n"+x.sl1+m2)+x.sl2;
v_s=sls500(v_s);
x.v_save=ta.value; ta.value=v_a+ v_s +v_e;
let pos=v_a.length+v_s.length; if (typeof(setCaretPosition)=="function") { setCaretPosition(ta,pos); //V4 } else if(ta.setSelectionRange){ ta.focus(); ta.setSelectionRange(pos,pos); } }
function head_op(op){ return "= "+op.text+" = \u2753\n"+op.title+"\n\n"; }
const tmpta=document.createElement("textarea"); function decode(x) { tmpta.innerHTML=x; return tmpta.value; }
let char_tab=[["ä","ä"],["ö","ö"],["ü","ü"],["ß","ß"] ,["Ä","Ä"],["Ö","Ö"],["Ü","Ü"]];
for(let c of char_tab){ c[0]=decode(c[0]); c[1]=decode(c[1]); }
function change_fn(cryp,op) { let arr=[]; let ips=document.querySelectorAll(x.qsv4); for(let i=0;i<ips.length-1;i++) { arr.push(decode(ips[i].value)); // letzter Filename wird nie kryptisch } const rg=/\[\[File:(.+?)\|/g; let r=rg.exec(ta.value); if (arr.length && r&&r[0]){ if(confirm(head_op(op))){ x.v_save=ta.value; ta.value=ta.value.replace(rg,function(needle){ let v=needle.substring(7,needle.length-1); let vc=char_corri(v,cryp); v=cryp?(arr.includes(vc)? vc : v) : vc; return needle.substr(0,7)+v+"|"; }); } } else alert("\u274C keine [[File:....]] gefunden"); }
function char_corri(s,cryp) { let x="";for(let cp of s) x+=cp; for(let ct of char_tab){ x=x.replaceAll( ct[cryp?0:1],ct[cryp?1:0]); } return x; }
for(let o of op_lst){ let op=new Option(decode(o[0])); icf.add(op); op.title=decode(o[1]) if(o[2]) op.fct=o[2]; }
icf.selectedIndex=0;
icf.onchange=function(){ let op=this.options[this.selectedIndex]; if(op.fct) op.fct(op); this.selectedIndex=0; }