bei Auswahl einer Popup-Ebene scrollen

WDNewcomer schrieb am 22.07.2019 um 23:27 Uhr

Guten Tag zusammen,

 

ich habe auf meiner Webseite als Header mehrere Panoramabilder integriert.

Beim aufrufen der Webseite wird von mir ein bestimmtes Panorama vor ab ausgewählt.

Mit dem Befehl ,,,,,, <body onload= "xr_cpu(12), xr_cpu(29), xr_top()"> ,,,,,,, habe ich das in dem Webseiten Body html realisiert.

Die Verlinkung hier wurde über Popup-Ebene durchgeführt und funktioniert.

 

Leider springt bzw scrollt das Fenster nicht nach oben wenn ich andere Panoramen auswähle.

Ich habe es bereits mit den Befehlen ,,,, javascript: xr_cpu(29), xr_top(),,,,,,für die Smartphone variante und für die Desktop Variante ,,,,,, javascript: xr_cpu(12), xr_top() ,,,,,,,

Wenn ich diesen Befehl in dem MouseOver Bild in den Webeigenschaften auf dem Reiter , Links unter Link auf Internet oder E-Mail-Adresse: einfüge, dann erscheint plötzlich ein ganz anderes Panorama als Startpanorama, es scheint so als hätten sich die Indezes?! geändert. Außerdem funktionieren die Verlinkungen gar nicht mehr, wenn ich auf ein Panorama klicke dann ändert sich das Große Panorama im Header nicht mehr.

 

Ebenfalls ist mir aufgefallen, dass wenn man ins leere Klickt das große Panorama im Header verschwindet und es einfach weiß dargestellt wird. Kann man das Verhindern? Das sozusagen IMMER eines der Panoramen dargestellt wird, auch wenn man ins leere klickt?

 

Ich hoffe das ich meine Problemstellung verständlich beschrieben habe.

Verwendet wird die Version MAGIX Web Designer Premium 16.2.0.56957  DL x64 Jun  5 2019

 

Vielen Dank für eure Hilfe =)

 

Kommentare

BeRo schrieb am 23.07.2019 um 00:00 Uhr

Nach etlichen PN weiß ich worum es geht... 🤓
Damit auch die anderen "Helferlein" und die User mit ähnlichen Problemen wissen worum es geht, hier ein Screenshot des Editorfensters (WD 16 prem.) der Smartphone Variante, mit einem Lösungsvorschlag:

Die im Screenshot sichtbaren Dummy Buttons haben je einen Link zu einer bestimmten popup Ebene bekommen (output 1...3).
Öffnest Du die Seite in der Vorschau und platzierst den Mauszeiger auf einen der Buttons, siehst Du in der Fußzeile den Index, den der WD der jeweiligen popup Ebene zugordnet hat.

Nach diesem Muster kannst Du ganz einfach den Indexwert aller verlinkten popup Ebenen feststellen und in die JavaScript Links übernehmen.
Der Link, den Du in das erste Bild der Smartphone Variante eintragen musst, sieht also so aus:

javascript: xr_cpu(32), xr_top()

Genauso verfährst Du mit den anderen Links in allen Varianten. Wenn Du es richtig machst, solltest Du in 20 Minuten mit dem Projekt fertig sein 😋

Viel Erfolg

Edit 23.07. 00:15 h

Deine nachgeschobene Frage zu den popup Ebenen...

[...] Ebenfalls ist mir aufgefallen, dass wenn man ins leere Klickt das große Panorama im Header verschwindet und es einfach weiß dargestellt wird [...]

Ja, das kann man verhindern, wenn den popup Ebenen das Attribut "lock" zugewiesen wird.

Dann lassen sich die Ebenen nur noch mit einem JavaScript Befehl schließen, der so aussehen kann:

popup close: "output1 (lock)"

Leider lässt sich der Befehl nicht mit "javascript: xr_cpu(32), xr_top()" kombinieren. Wie es trotzdem gehen kann, dass erkläre ich Dir, wenn ich Morpheus "entkommen" bin... 😆

Zuletzt geändert von BeRo am 23.07.2019, 00:15, insgesamt 1-mal geändert.

Auf den Tag genau gehen heute, am 14.08.2021, 10 Jahre online Support für die Community zu Ende.
Ich freue mich auf eine neue, berufliche Herausforderung, die sich gerade ergeben hat. Leider bleibt dann keine Zeit mehr für die Community übrig, aber Ihr seid bei den aktiven Mitgliedern in besten Händen.
Sicher schaue ich auch ab und zu nochmal rein... 🤓

BeRo schrieb am 23.07.2019 um 12:39 Uhr

Hier der 2. Teil einer möglichen Lösung... 🙂

Gehen wir davon aus, dass Du in der Zwischenzeit die popup Ebenen mit dem Attribut "lock" ausgestattet hast, dann musst Du jetzt dafür sorgen, dass die Ebenen trotzdem geschlossen werden können.
Das geht, wie schon erwähnt, mit einer JS Funktion, die so aussieht:

<script>
function CloseAll(){  //schließt alle offenen popup Ebenen
var ll=document.getElementsByTagName('div');
for(var i=ll.length-1;i>=0;i--)
{
if(ll[i].id.indexOf("xr_xp")==0){
xr_v0(ll[i]);};};};
</script>

Und so wird die Funktion eingebunden:

Wenn Du den Aufruf der neuen Funktion in die vorhandene JavaScript gesteuerten Aufrufe der Funktionskette (Links) einbaust, bist Du am Ziel.
So sieht z. B. der Link auf die popup Ebene mit dem Luftpanorama aus:

javascript:CloseAll(), xr_top(), xr_cpu(13)

Damit werden zunächst alle eventuell geöffneten popup Ebenen geschlossen "CloseAll()",
dann wird im Browserfenster an die oberste Position gescrollt "xr_top()"
und schlussendlich die gewünschte popup Ebene geöffnet "xr_cpu(13)"

Das war's dann schon 😊

Wie das online aussieht, wenn Du alles richtig gemacht hast, das kannst Du hier sehen.

Viel Erfolg

Zuletzt geändert von BeRo am 23.07.2019, 12:42, insgesamt 1-mal geändert.

Auf den Tag genau gehen heute, am 14.08.2021, 10 Jahre online Support für die Community zu Ende.
Ich freue mich auf eine neue, berufliche Herausforderung, die sich gerade ergeben hat. Leider bleibt dann keine Zeit mehr für die Community übrig, aber Ihr seid bei den aktiven Mitgliedern in besten Händen.
Sicher schaue ich auch ab und zu nochmal rein... 🤓

WDNewcomer schrieb am 23.07.2019 um 16:41 Uhr

Vielen lieben Dank für deine Antwort.

Wie oben erwähnt funktioniert das mit Java nicht das er beim auswählen der Panos nach oben springt. Ich hab die entsprechenden Codes eingefügt mit dem entsprechendem Index. Aber leider klappt es nicht die Folgen davon steht oben.

 

Ich versuche es am Wochenende nochmal.

BeRo schrieb am 23.07.2019 um 17:01 Uhr

[...] Wie oben erwähnt funktioniert das mit Java nicht das er beim auswählen der Panos nach oben springt [...]

Dass es funktioniert, dass kannst Du in der online Demo sehen.
Wenn es bei Dir trotzdem nicht geht, dann hast Du irgendwo einen "Knoten" geknüpft... 😋

Lade Dir mal hier die modifizierte Projektdatei herunter, mit der ich die Demo gemacht habe. Da kannst Du sicher besser sehen, wie das Ergebnis zustande gekommen ist.

Viel Erfolg

Auf den Tag genau gehen heute, am 14.08.2021, 10 Jahre online Support für die Community zu Ende.
Ich freue mich auf eine neue, berufliche Herausforderung, die sich gerade ergeben hat. Leider bleibt dann keine Zeit mehr für die Community übrig, aber Ihr seid bei den aktiven Mitgliedern in besten Händen.
Sicher schaue ich auch ab und zu nochmal rein... 🤓

WDNewcomer schrieb am 28.07.2019 um 18:16 Uhr

Guten Tag, ich habe die Einstellungen soweit übernommen.

 

Wenn ich in "BODY" eintrage:

 

<script>
function CloseAll(){  //schließt alle offenen popup Ebenen
var ll=document.getElementsByTagName('div');
for(var i=ll.length-1;i>=0;i--)
{
if(ll[i].id.indexOf("xr_xp")==0){
xr_v0(ll[i]);};};};
</script>

 

werden auch die Buttons in der Navigationsleiste ausgeblendet. Das habe ich bei meiner Variante weggelassen.

 

Leider funktioniert bei mir trotzdem die Verlinkung auf die Bilder nicht, wenn ich draufklicke dann passiert nix. Vlt kann ich dir die aktuelle Datei zusenden?

 

Ps. die Projektdatei aus deinem Post wird nicht mehr gebraucht ;) kannst sie ja eventuell aus dem Forum entfernen... Danke

 

BeRo schrieb am 28.07.2019 um 22:53 Uhr

[...] Wenn ich in "BODY" eintrage: [...] werden auch die Buttons in der Navigationsleiste ausgeblendet. [...]

Das liegt an einer WD internen JS Funktion, die dafür sorgt, dass animierte Objekte wie popup Ebenen behandelt werden. Da haben die Entwickler scheinbar mit der heißen Nadel gestrickt und den einfachen Weg gewählt, anstatt den Objekten eine eigene ID oder Klasse zuzuweisen... 😏

Du kannst das Problem ganz einfach auf 2 Wegen lösen:

  1. Die Buttons Deiner Navigation können ohne Animation "leben", lass sie also "sofort" erscheinen, wenn die Seite geöffnet wird.
    In der online Demo habe ich das schon so umgebaut.

     
  2. Verzichte auf die JS Universalfunktion "CloseAll()" und ersetze sie durch den Einzelaufruf der WD internen "schließen" Funktion "xr_ppc('xr_xp#')", für jede zu schließende popup Ebene.
    Das kann so aussehen:
    javascript:xr_ppc('xr_xp14'), xr_ppc('xr_xp15'), xr_top(), xr_cpu(13)
    
    Damit werden die popup Ebenen 14 und 15 geschlossen, die Seite wird nach oben gescrollt und die popup Ebene 13 wird eingeblendet.

     
  3. Die dritte Möglichkeit ist die eleganteste aber auch die komplizierteste.
    Du kannst mit einer HTML Anweisung allen popup Ebenen eine eigene ID (Name) zuweisen über die Du in einem separaten JScript die Ein-/Ausblendung der Ebenen steuern kannst.
    Dann kannst Du auf die mühselige Suche nach den vom WD vergebenen Indexwerten für die einzelnen pu Ebenen verzichten.
    Wie das im WD Editor gemacht werden kann, das habe ich u. a. hier beschrieben.

[...] Leider funktioniert bei mir trotzdem die Verlinkung auf die Bilder nicht, wenn ich draufklicke dann passiert nix. [...]

Sehr wahrscheinlich hast Du an der Position- oder an der Anzahl der Ebenen etwas geändert. Damit ändern sich automatisch auch die Indexwerte. Da musst Du also nochmal "Hand anlegen" und die Werte in den JS Aufrufen anpassen...

[...] Vlt kann ich dir die aktuelle Datei zusenden? [...]

Das wird nicht nötig sein, weil die Ursache des Problems vermutlich in der Anordnung der pu Ebenen liegt (s. o.)

[...] die Projektdatei aus deinem Post wird nicht mehr gebraucht ;) kannst sie ja eventuell aus dem Forum entfernen...

Kein Problem. Der Inhalt des ZIP Archivs ist korrigiert.

 

Auf den Tag genau gehen heute, am 14.08.2021, 10 Jahre online Support für die Community zu Ende.
Ich freue mich auf eine neue, berufliche Herausforderung, die sich gerade ergeben hat. Leider bleibt dann keine Zeit mehr für die Community übrig, aber Ihr seid bei den aktiven Mitgliedern in besten Händen.
Sicher schaue ich auch ab und zu nochmal rein... 🤓

WDNewcomer schrieb am 29.07.2019 um 01:32 Uhr

dankeschön für deine Unterstützung,

ich habe die Navileiste nun aus "Sofort" eingestellt.

Zur Kontrolle der Indizes habe ich die Panoramen auf Popup Ebene gestellt und bin mit der Maus im Browser über die Fläche gefahren und habe mir den Index notiert. In dieser Variante ändern sich die Panoramen


Wenn ich mit dem Code

javascript:CloseAll(), xr_top(), xr_cpu(31)

Arbeite, dann funktioniert das wechseln zwischen den Panoramen nicht :(

- Das hoch scrollen funktioniert

- Das Panorama bleibt wie gewünscht erhalten, wenn man ins "leere" klickt

- Das gewünschte Anfangspanorama wird angezeigt.

 

Teile des Codes scheinen wohl zu funktionieren, irgendwie ist hier noch irgendwo eine falsche Einstellung oÄ

BeRo schrieb am 29.07.2019 um 10:16 Uhr

[...] In dieser Variante ändern sich die Panoramen [...]

Und in der anderen Variante nicht?

Es ist sehr wahrscheinlich, dass bei Layout Änderungen beide Varianten verändert werden. Hat eine solche Layout Änderung eine Änderung in der Anzahl oder der Position einzelner Ebenen zur Folge, dann sind definitiv beide Varianten von der Änderung der Indexwerte der Ebenen betroffen.

[...] Wenn ich mit dem Code [...] Arbeite, dann funktioniert das wechseln zwischen den Panoramen nicht [...]

Deine Problembeschreibung lässt nur den Schluss zu, dass der Indexwert für die popup Ebene im aufrufenden JScript nicht stimmt... 😋

Auf den Tag genau gehen heute, am 14.08.2021, 10 Jahre online Support für die Community zu Ende.
Ich freue mich auf eine neue, berufliche Herausforderung, die sich gerade ergeben hat. Leider bleibt dann keine Zeit mehr für die Community übrig, aber Ihr seid bei den aktiven Mitgliedern in besten Händen.
Sicher schaue ich auch ab und zu nochmal rein... 🤓

WDNewcomer schrieb am 29.07.2019 um 10:33 Uhr

Mhhh, das Erscheinen des ersten panoramas funktioniert aber über den Index, kann ich dir die neue Projektdatei zusenden? Ich wüsste jetzt nicht mehr weiter, hab alles durchprobiert, irgendwo stimmt etwas nicht... :(

BeRo schrieb am 29.07.2019 um 11:15 Uhr

[...] das Erscheinen des ersten panoramas funktioniert aber [...]

Dann stimmt der Indexwert für diese popup Ebene. Das heißt aber nicht, dass die Werte der anderen Ebenen auch stimmen... 😇

[...] kann ich dir die neue Projektdatei zusenden? [...]

Ok, gib mir einen Link für den Download, dann schau' ich's mir an.

Auf den Tag genau gehen heute, am 14.08.2021, 10 Jahre online Support für die Community zu Ende.
Ich freue mich auf eine neue, berufliche Herausforderung, die sich gerade ergeben hat. Leider bleibt dann keine Zeit mehr für die Community übrig, aber Ihr seid bei den aktiven Mitgliedern in besten Händen.
Sicher schaue ich auch ab und zu nochmal rein... 🤓

WDNewcomer schrieb am 29.07.2019 um 18:50 Uhr

Link ist draußen :)

BeRo schrieb am 29.07.2019 um 22:04 Uhr

[...] Link ist draußen [...]

OK. Ich hab's mir gerade angesehen....
Dein Problem ist in der Hauptsache ein Verständnisproblem. Du hast "vergessen", dass popup Ebenen nur dann funktionieren, wenn ein Link auf sie zeigt, der z. B. mit einem Dummy Button angelegt wird. In Deinem Projekt hast Du aber alle Links (auch die Dummy Buttons) gelöscht und damit die popup Ebenen für die Scriptdateien unsichtbar gemacht. 😖

Dass beim Öffnen der Seite trotzdem die popup Ebene "output3" sichtbar wurde, ist wohl der Tatsache zu verdanken, dass die Ebene in der Hierarchie ganz oben liegt und deswegen über allen anderen permanent sichtbar ist. 😊

Deine Lösung:

  • weise allen Panorama popup Ebenen das Attribut "lock" zu und aktiviere in den Popup Einstellungen die Option "Popup automatisch schließen"

    Mit dem "lock" Attribut verhinderst Du, dass popup Ebenen automatisch geschlossen werden, wenn außerhalb des Panoramas geklickt wird.
     
  • Lege zu allen Panorama popup Ebenen je einen Dummy Button an, dem Du einen Link auf die popup Ebene verpasst. Das gilt für beide Varianten, Smartphone und Desktop.

    Die Dummies kannst Du anschließend unsichtbar machen, damit sie das Layout nicht stören. Klick dazu einfach auf das Auge Symbol in der Seiten- & Ebenen-Galerie. Das Symbol erscheint in Rot und der zugehörige Dummy Button wird unsichtbar.
    Bei Bedarf machst Du die Buttons mit einem weiteren Klick auf das Auge Symbol wieder sichtbar, z. B. um eventuell veränderte Indexwerte der pu Ebenen zu kontrollieren

Das war's. Dein Projekt sollte jetzt fehlerlos "laufen" 😇

BTW
Kontrollier' mal, ob der HTML Platzhalter in der page background Ebene so gewollt ist.
Vermutlich ist er nur ein "Blinddarm", der für unliebsame Überraschungen sorgen kann...

Zuletzt geändert von BeRo am 29.07.2019, 22:17, insgesamt 1-mal geändert.

Auf den Tag genau gehen heute, am 14.08.2021, 10 Jahre online Support für die Community zu Ende.
Ich freue mich auf eine neue, berufliche Herausforderung, die sich gerade ergeben hat. Leider bleibt dann keine Zeit mehr für die Community übrig, aber Ihr seid bei den aktiven Mitgliedern in besten Händen.
Sicher schaue ich auch ab und zu nochmal rein... 🤓

WDNewcomer schrieb am 30.07.2019 um 20:11 Uhr

WOOOOWWW, alles funktioniert so wie gewünscht =) ich bin dir sehr sehr dankbar, das mit dem Dummy-Button habe ich irgendwie nicht auf dem Schirm gehabt :`( tut mir leid

 

vielen vielen Dank für deine Hilfe!!!