Wie Popup zeitverzögert öffnen?

Hallo, wie kann ich die folgende Funktion zeitverzögert ausgeben? Beispielsweise nach 5 Sekunden? [i][/i] Was Javascript angeht bin ich leider nicht ganz fit. Soweit ich es gelesen habe, muss es mit “window.setTimeout(‘Funktionsname()’, 5000);” irgendwie gehen, jedoch habe ich es bisher nicht zum laufen bekommen. Schonmal danke im Voraus!

Hallo fulmartin, so dürfte dies bereits funktionieren: window.setTimeout(function() { $.modal.open('deineUrl',{ mode:'ajax', sizing:'content', }); }, 5000); Wichtig ist nur, dass der String ‚{url controller=Popup action=index}‘ so nicht funktionieren wird. Dies ist eine Smarty-Funktion und Smarty wird ohne Weiteres nicht in Javascript genutzt. Du müsstest deine URL also anderweitig hinterlegen. Gruß, Patrick :shopware:

1 Like

Vielen Dank!

Eine Frage zu dem Thema habe ich noch: Ist es technisch möglich den Zähler auch seitenübergreifend laufen zu lassen? Also z.B. der Kunde gelangt auf den Shop (Zähler startet), geht auf diverse Unterseiten, schaut sich um und nach sagen wir mal insgesamt 5min erscheint das Popup.

Soweit ich mich eingelesen habe geht es über Cookies, ich habe dazu folgendes Plugin integriert: https://github.com/carhartl/jquery-cookie Damit habe ich folgendes gebastelt: $(document).ready(function() { if ($.cookie('popup\_shown') == null) { $.cookie('popup\_shown', 'yes', { expires: 7, path: '/' }); setTimeout(function(){ $.modal.open('meineURL',{ mode:'ajax', sizing:'content', }); }, 7000); } }); Funktioniert leider nicht, kann da vielleicht jemand rüberschauen? Danke