Hallo Forum!
Ist es machbar das ich die Lightbox bei aufruf einer Domain starte?
Quasi wenn ich das erstemal auf die Seite komme das die Lightbox auf geht!!!
Bitte um Hilfe da ich hier nix finden konnte!
Beste Grüße!
Hallo Forum!
Ist es machbar das ich die Lightbox bei aufruf einer Domain starte?
Quasi wenn ich das erstemal auf die Seite komme das die Lightbox auf geht!!!
Bitte um Hilfe da ich hier nix finden konnte!
Beste Grüße!
Keiner ne Idee?
HI
langsam, langsam. Du musst Geduld haben
Theoretisch könnte das mit einem onload-Attribut für den <body>-Tag hinhauen, aber ich kann kein Javascript, sodass ich dir nicht sagen kann, was da rein muss.
Sebastian
Meine JS-Kenntnisse sind zwar spärlich dürften dafür aber ausreichen.
- erstelle einen Link, der bei Klick genau die Lightboxanzeige aufruft die du willst
- Sieh dir den Quellcode der Seite an und suche diesen Link
- dort findest du ein attribut â la " onclick="tudies_oder_das()" "
- den Wert des onclick attributes kopierst du in deinem template in das attribut onload im <body>-tag
- voîla - müsste funktionieren
Edit: Bedenke aber, dass nicht jeder Besucher JS aktiviert hat, daher bitte keine wichtigen Informationen in die Anzeige der Lightbox packen
Beste Grüße aus Österreich
XING: https://www.xing.com/profile/Johannes_Ferner2
HI
die Lightboxen verfügen nicht über ein onclick-Attribut, sondern nur über die Klasse „lightbox“. Das Javascript liest dann die Seite aus.
Sebastian
hmmm erst einmal Danke!
Aber jetzt bin ich verwirrt! Geht das nu so oder nich?
arg....
Also ich habe es jetzt wie folgt gelöst!
Als erstes habe ich in der Seitenstrucktur die gewünschte Seite für den Lightbox-Inhalt angelegt. Die Seite habe ich im Menü versteckt.
Dann habe ich der Seite einen Artikel mit entsprechendem Inhalt verpasst.
Nun kommt lightbox4ward zum Einsatz. Typolight v. 2.7.6
Dann habe ich auf der Startseite einen Link für den Artikel mit dem Inhalt für die Lightbox die bei Seitenaufruf kommen soll angelegt.
Nun bin ich in das Seitenlayout gegangen und habe den folgenden Inhalt bei Body onload eingefügt lightbox4wardXXX();return false;! <--- XXX ist eine Zahl diese Zahl bekommt Ihr aus dem Quellcode der Seite auf der der Link von lightbox4ward ist.
Thats it!
OK keine gute Lösung! Immerhin gehts! Allerdings geht das Lightbox-Fenster jetzt immer auf wenn man auf diese Seite geht!
HI
dann solltest du wohl auslesen, ob der Benutzer schon ein Cookie der Seite hat, und dann die Lightbox nicht ausführen. Damit es aber nicht nervig für Leute ist, die Cookies aus Prinzip verbieten (da würde sie immer noch immer aufgehen), legst du außenherum noch eine Prüfung, ob Cookies überhaupt gesetzt werden können, und nur wenn der Test positiv ist, wird die Lightbox geöffnet.
Sebastian
Falls du zu einer Lösung gekommen bist, dann würde ich diese auch gerne sehen
Klingt logisch! Aber wie genau... bin ja kein Freak!
JS?
Korrektur Herr Lehrer!
STRG-DEL Klingt logisch! Aber wie genau... bin ja kein Freak!
JS? /STRG-DEL
Ich arbeite dran!
Geändert von GermanDevil (15.01.2010 um 16:29 Uhr)
HI
vielleicht eher PHP (TYPOlight verfügt, meine ich, auch über Cookie-Funktionen). Und wenn das PHP-Skript (das du beispielsweise über den file-Inserttag einbinden kannst) mit den Bedingungen einverstanden ist, gibt es den korrekten Javascript-Code aus. Das Cookie-Setzen und -Auslesen macht dann PHP.
Sebastian
Ja da hast Du recht... die Aussage mit JS war etwas voreilig und unüberlegt!
Ich werde sehen was ich für Euch tun kann!
Also ich habe es jetzt wie folgt gelöst!
Als erstes habe ich in der Seitenstrucktur die gewünschte Seite für den Lightbox-Inhalt angelegt. Die Seite habe ich im Menü versteckt.
Dann habe ich der Seite einen Artikel mit entsprechendem Inhalt verpasst.
Nun kommt lightbox4ward zum Einsatz. Typolight v. 2.7.6
Dann habe ich auf der Startseite einen Link für den Artikel mit dem Inhalt für die Lightbox die bei Seitenaufruf kommen soll angelegt.
Als nächstes habe ich unter Templats eine weitere fe_page.tpl angelegt und sie in lightbox_on.tpl umbenannt und sie an meine Bedürfnisse angepasst.Dieser Teil fällt weg mit der PHP-Lösung!
Nun bin ich in das Seitenlayout gegangen und habe den folgenden Inhalt bei Body onload eingefügt lightbox4wardXXX();return false;! <--- XXX ist eine Zahl diese Zahl bekommt Ihr aus dem Quellcode der Seite auf der der Link von lightbox4ward ist.
In dieses lightbox_on.tpl habe ich nun folgenden PHP-Code eingefügt:
Denk an die XXX durch den Linkinhalt (Zahlen) auszutauschen!!!PHP-Code:
<?php if (isset($_COOKIE['cookie'])) { ?>
<body onLoad="">
<?php } else { ?>
<body onLoad="lightbox4wardXXX();return false;">
<?php
setcookie ("cookie[lightboxStop]", "lightboxStop", time () + 1209600);
?>
<?php } ?>
Der Cookie bleibt somit 14 Tage (1209600 Sek.)bestehen .
Nun habe ich die lightbox_on.tpl im Seitenlayout unter Experten-Einstellungen -->
Seitentemplate ausgewählt.
Bei mir gehts prima!
Verbeserungsvorschläge sind erwünscht!
LG!
An einer Lösung ohne Cookie arbeite ich noch! Jaja es gibt Leute die nehmen keinen einzigen Cookie an!
Geändert von GermanDevil (16.01.2010 um 21:41 Uhr)
HI
dazu müsstest du nur außenherum das Cookie setzen lassen, denke ich.
SebastianPHP-Code:
<?php if (isset($_COOKIE['cookie'])) { ?>
<body onLoad="">
<?php } else {
setcookie ("cookie[lightboxStop]", "lightboxStop", time () + 1209600);
if (isset($_COOKIE['cookie'])) { ?>
<body onLoad="lightbox4wardXXX();return false;">
<?php } else { ?>
<body onLoad="">
<?php }
} ?>
HI
übrigens kann TYPOlight auch Cookies setzen, ich nehme an da ist auch gleich die Prüfung vorhanden: http://api.https://contao.org/Librar...html#setCookie
Sebastian
So, war den ganzen Tag unterwegs.
Ich werde mich da gleich mal mit auseinandersetzen.
Cookie Außenherum setze klingt logisch! Gleich mal machen! :-)
Danke für die Hilfe!
Ich melde mich wieder!
HI
das verstehe ich nicht. Eigentlich sollte jetzt keine Lightbox kommen, wenn entweder das Cookie exisitiert oder Cookies nicht akzeptiert werden. Die Lightbox kommt nur, wenn kein Cookie vorhanden ist und die Prüfung auf die Akzeptanz von Cookies erfolgreich war.
Was meinst du mit „aushebeln“?
Sebastian
Im onload Attribut könnte es sein, dass Pop-Up Blocker anschlagen. Um das zu umgehen, am Ende eurer modifizierten fe_page einfach dies hier einfügen:
PHP-Code:
<?php if(!isset($_COOKIE['cookie'])) { ?>
<script type="text/javascript">
window.addEvent('domready', function() {
lightbox4wardXXX();
return false;
});
</script>
<?php setcookie ("cookie[lightboxStop]", "lightboxStop", time () + 3600); ?>
<?php } ?>
Ich mus diesen Eintrag noch einmal aufwärmen, weil mir da einiges unklar ist.
Ist damit ein Artikelinhaltselement vom Typ 'Hyperlink' gemeint? Und danach im Feld Linkadresse den Seitenlink --> z. B. {{link_url::129}}? Ohne weitere Optionen im Inhaltselement?Dann habe ich auf der Startseite einen Link für den Artikel mit dem Inhalt für die Lightbox die bei Seitenaufruf kommen soll angelegt.
Dann heißt es da weiter:
An welcher Stelle muss das eingefügt werden? Die kopierte Vorlage hat knapp 70 Zeilen und mir ist nicht klar, wo diese Modifikation hinein kommt.In dieses lightbox_on.tpl habe ich nun folgenden PHP-Code eingefügt:
Code:<?php if (isset($_COOKIE['cookie'])) { ?> <body onLoad=""> <?php } else { ?> <body onLoad="lightbox4wardXXX();return false;"> <?php setcookie ("cookie[lightboxStop]", "lightboxStop", time () + 1209600); ?> <?php } ?>
An dieser Stelle hakt es weiter:
Weiter oben steht dazu auch noch etwas, aber mir ist schleierhaft, wie ich diese Zahl ermitteln soll. *grübel*Denk an die XXX durch den Linkinhalt (Zahlen) auszutauschen!!!
Und wie kommt diese Zeile dahin:
das hier der Cookie:Code:<?php if (isset($_COOKIE['cookie'])) { ?>
herangezogen wird?Code:cookie[lightboxStop]
Rainer G. aus H.
www.BunteReisebilder.de
Erschwerend kommt noch hinzu, dass mir das modifizierte Template nicht in der Auswahl im Seitenlayout angeboten wird.
Was mach ich da nun wieder falsch?
*grübel*
Rainer G. aus H.
www.BunteReisebilder.de
So, mit dem Schreiben meiner letzten Beiträge ist so einiges in meinen Gehirnwindungen ins rotieren gekommen. Ich hoffe, ich liege jetzt nicht mehr so daneben.
Ich habe jetzt ein Lightbox4ward Inhaltselement erzeugt (statt dem Hyperlink-Element - was eher hinkommt). Das PHP-Script habe ich erstmal nach dem HEAD-Abschnitt eingefügt und das Lightbox4wardxxx gegen die ID des entsprechenden Eintrages genommen (oder ist das auch daneben gegriffen?).
Nur wie bekomme ich das neue Template selektiert? Es erscheint nicht in der Auswahl im Seitenelement.
Rainer G. aus H.
www.BunteReisebilder.de
Wieder ein Stück weiter!
Was hier nicht erwähnt wurde (oder hab ich's überlesen?):
Beim Umbennnen des fe_page Templates muss im Namen vorn weg ein fe_ sein. Jetzt kommt schon mal die Box. sie ist aber noch ohne Inhalt. Also denke ich mal, ich hab noch nicth verstanden, wie der Lightboxaufruf verknüpft wird.
Was muss hier für die X-se gesetzt werden?
Der Versuch mit dem Index des Inhalteelementes von lightboxward scheint es nicht zu sein. die Lightbox wird zwar angezeigt, aber sie ist ohne Inhalt, also erfolgt keine Verknüpfung mit dem gewünschten Artikel :-(.PHP-Code:
<body onLoad="lightbox4wardXXX();return false;">
Mit Artikel (in einer Lightbox) und der Option 'sofort anzeigen' klappt es jetzt schonmal, aber wollte ja die niedergeschriebene Variante verfolgen, damit die Lightboxanzeige über den Cookie gesteuert wird.
Rainer G. aus H.
www.BunteReisebilder.de
Hi.
Vielleicht interessant... vor ein paar Tagen gab es diesen Beitrag.
Gruß
Thomas
blucomp | Webdesign & Onlinelösungen
Guter Tipp, werde ich mir daheim mal anschauen.
THX
Rainer G. aus H.
www.BunteReisebilder.de
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
Lesezeichen