Zitat von
Barbar1902
Danke Marco, nun wie isch schon erwänte ich bin nit der Programmierer aber wo muss ich nun diesen code einfügen?
Hallo Lukas
Ok, dann mache folgendes:
Auf der Seite, auf der die Vorschau angezeigt werden soll, erstellst du ein Inhaltselement Text und fügst dort deine Links ein. Also z.B. Dokument1, Dokument2 usw. Verlinke die jeweiligen Links via Link-Symbol. Es öffnet sich dann ja ein Fenster. Trage bei Adresse nur # ein. Bei CSS-Klasse wähle (wert) und schreibe dann preview dokument1 rein (nicht bei allen. Jeder muss ein andere Klasse haben. Also z.B. dokument1, dokument2 usw.) Du kannt auch etwas anderes anstatt das Wort dokument1 schreiben. Es muss nachher im JavaScript einfach gleich heissen. Nachdem du alle Links entsprechend verlinkt hast, speichere dieses Element.
Als nächstes würde ich unterhalb dieses Inhaltelements ein Element Typ HTML anlegen und dort folgendes eintragen:
HTML-Code:
<iframe width="600" height="800" id="myiframe" src="#"></iframe>
Hier drin werden dann deine PDFs angezeigt. Aber achtung! Damit das iframe gespeichert werden kann, musst du bei Contao unter Einstellungen > Sicherheitseinstellungen > Erlaubte HTML-Tags noch den Tag <iframe> hinzufügen.
Also so: iframe.png
Nachdem du das HTML-Element erstellt hast, gehe zur Layoutverwaltung (Themes > Seitenlayouts) und bearbeite das entsprechende Layout. Wähle unten jQuery laden.
Anschliessend bei Eigener JavaScript-Code folgendes einfügen:
HTML-Code:
<script>
$(document).ready(function() {
$(".preview").click(function() {
//Wenn die entsprechende Klasse gesetzt ist, PDF-Link im iframe ändern
if($(this).hasClass("document1"))
$("#myiframe").attr("src", "files/dokumente/meindokument1.pdf");
if($(this).hasClass("document2"))
$("#myiframe").attr("src", "files/dokumente/meindokument2.pdf");
});
});
</script>
Hier musst du entsprechend die Werte anpassen. Also dokument1, dokument2 usw. und das dazugehörige PDF angeben.
Der Code macht eigentlich nichts anderes als zu fragen "hat der angeklickte Link die Klasse dokument1?"
Ja? > angegebenes PDF im iframe anzeigen! Nein? > nichts machen!
Du hast wahrscheinlich mehr als zwei Links. Dann einfach folgendes kopieren und unten anfügen:
HTML-Code:
if($(this).hasClass("document2"))
$("#myiframe").attr("src", "files/dokumente/meindokument2.pdf");
Also so:
HTML-Code:
<script>
$(document).ready(function() {
$(".preview").click(function() {
//Wenn die entsprechende Klasse gesetzt ist, PDF-Link im iframe ändern
if($(this).hasClass("document1"))
$("#myiframe").attr("src", "files/dokumente/meindokument1.pdf");
if($(this).hasClass("document2"))
$("#myiframe").attr("src", "files/dokumente/meindokument2.pdf");
if($(this).hasClass("document3"))
$("#myiframe").attr("src", "files/dokumente/meindokument3.pdf");
if($(this).hasClass("document4"))
$("#myiframe").attr("src", "files/dokumente/meindokument4.pdf");
});
});
</script>
Ich hoffe, ich konnte es dir einigermassen verständlich erklären.
LG
Marco
Lesezeichen