Search the FirstSpirit Knowledge Base
Hallo Zusammen.
Wie kann ich einen Reload auf die Vorschau auslösen, nachdem die Position eines Absatzes verändert wurde.
Mit der Option: reloadPreview:true wird die Vorschau nur aktualisiert, wenn auch etwas am Element geändert wurde, nicht jedoch bei dessen Psoitionswechsel.
In der API gibt es eine Funktion: WE_API.Preview.reload();
Mit der Funktion erhalte ich zwar einen Reload, aber nun muss ich mich noch irgendwo einklinken, dass ich die Funktion ausführen kann, wenn sich die Position eines Elements verändert.
Wie muss ich da vorgehen bzw. geht es überhaupt oder vielleicht noch einfacher?
Gruß,
Daniel
Hallo Daniel,
ich habe ein internes Ticket gefunden, bei dem dieses Verhalten erwähnt wird und angedeutet wird, dass es dafür technische Gründe gibt.
Die Intention hinter dem Nicht-Neuladen der Seite ist, dass man bei langen Seiten mit vielen Absätzen nicht an den Seitenanfang befördert wird, wenn man weit unten einen Absatz verschiebt.
Unser HelpDesk kann dir aber sicherlich genaueres sagen. Die ID des erwähnten Tickets ist 108013.
Viele Grüße
Tim
Hallo Daniel,
vielleicht hilft es dir schon, wenn du in ein in der Struktur höher liegendes Element (eventuell der gesamte body) ein $CMS_VALUE(editorId(reloadPreview:true))$ einfügst.
Sinvoll ist es wahrscheinlich es in ein div zu packen, das um die zu verschiebenen Elemente liegt.
Grüße
Jan
Hallo Jan.
Bringt leider nix. Habe es an allen Elementen gesetzt bis zum body hin, ohne Effekt. Noch eine Idee?
Alternativ würde es mir auch helfen, wenn ich mich per JavaScript z.B. in die Funktion Verschieben einhängen könnte. Dann könnte ich den Reload Aufruf selbst triggern.
Gruß,
Daniel
Hallo Daniel,
haben die beiden Absätze, die du verschieben möchtest, den gleichen direkten DOM-Vater? Falls ja könnte das der Grund sein, warum reloadPreview beim Verschieben der Absätze nicht greift.
Viele Grüße
Tim
Hallo Tim.
Die beiden Absätze liegen im gleichen DIV oder was meinst du mit DOM-Vater?
Was genau ist dann das Problem. ReloadPreview ist ja bei den Elementen und beim "DOM-Vater" also dem umgebenden DIV gesetzt?!
Gruß,
Daniel
Hallo Daniel,
welche genaue FirstSpirit Version verwendest du eigentlich? Was ich bei mir (FS 5.1.209) feststellen konnte ist Folgendes:
Angenommen die Absatzvorlage hat folgende Struktur
<div>
<div $CMS_VALUE(editorId(reloadPreview:true))$>
<div $CMS_VALUE(editorId(editorName:"st_text"))$>
$CMS_VALUE(st_text)$
</div>
</div>
</div>
und die Seitenvorlage gibt im body lediglich die Absätze aus, sonst keinerlei Elemente. Dann wird beim Verschieben der Absätze im ContentCreator die komplette Seite neu geladen.
Fehlt in der Absatzvorlage allerdings das umgebende div, also
<div $CMS_VALUE(editorId(reloadPreview:true))$>
<div $CMS_VALUE(editorId(editorName:"st_text"))$>
$CMS_VALUE(st_text)$
</div>
</div>
so wird beim Verschieben der Absätze die Seite nicht neu geladen.
Es scheint also davon abzuhängen, ob die Elemente mit reloadPreview den gleichen "Vater" haben. Im ersten Fall hat jeder Abatz einen eigenen div als Vater, im zweiten Fall haben alle body als direkten Vater.
Welches Scenario trifft bei dir zu?
Viele Grüße
Tim
Hallo Tim.
Bei uns trifft das zweite Beispiel zu. Ist das dann ein Fehler im WebClient.
Gruß,
Daniel
Hallo Daniel,
ich habe ein internes Ticket gefunden, bei dem dieses Verhalten erwähnt wird und angedeutet wird, dass es dafür technische Gründe gibt.
Die Intention hinter dem Nicht-Neuladen der Seite ist, dass man bei langen Seiten mit vielen Absätzen nicht an den Seitenanfang befördert wird, wenn man weit unten einen Absatz verschiebt.
Unser HelpDesk kann dir aber sicherlich genaueres sagen. Die ID des erwähnten Tickets ist 108013.
Viele Grüße
Tim