Modalbox wird nicht in Einkaufswelt angezeigt

Hallo,

ich bin mal wieder verwirrt.

Im Footer nutze ich für einige Linkbilder eine Modalbox, wo dann jeweils eine Shopseite aufgerufen wird.

Das mache ich so:

Funktioniert bestens - im Footer…

Wenn ich nun diesen Code EXAKT in einem EInkaufswelt HTML-Element einfüge, wird das Bild zwar angezeigt, aber die Modalbox nicht?!

Hat jmd damit Erfahrungen oder weiß, woran es liegen könnte?

Ich möchte nämlich ein Bild einfügen, wobei nach Draufklicken eine Modalbox mit Video erscheint.

Die Einkaufswelt-Videofunktion ist nämlich optisch nicht ansprechend…

Ich push das mal nach oben…

Suche bitte nach Modalbox im Forum. Es gibt glaube ich ca. 5 Threads. Damit müsstest du eine für deinen Fall passende Lösung finden können.

Bereits getan. Bringt mich nicht weiter. Im Footer, wie bereits erwähnt, funktionieen die Modalboxen ja, bloß nicht in der Einkaufswelt.

Das HTML innerhalb der Einkaufswelten wird per Ajax nachgeladen. Somit sind für deine modalboxen keine events registriert und lassen sich damit auch nicht öffnen.

Viele Grüße

Na, das nenne ich doch mal konstruktiv!

Also gibt es keine Möglichkeit? Habe gerade durch googeln entdeckt, dass man wohl durch:

            /*Modalbox vorladen*/
            StateManager.updatePlugin(’*[data-modalbox=„true“]’, ‚swModalbox‘);

in der jquery.emtion.js diesen Fehler fixen könnte. Aber hat nicht funktioniert…

@thering schrieb:

Na, das nenne ich doch mal konstruktiv!

Also gibt es keine Möglichkeit? Habe gerade durch googeln entdeckt, dass man wohl durch:

            /*Modalbox vorladen*/
            StateManager.updatePlugin(’*[data-modalbox=“true”]’, ‘swModalbox’);

in der jquery.emtion.js diesen Fehler fixen könnte. Aber hat nicht funktioniert…

Hallo,

du könntest einmal probieren, ob es eventuell schon ausreicht, in der subscribe-Funktion auf onLoadEmotionFinished einfach swModalbox neu zu initialisieren:

StateManager.addPlugin('*[data-modalbox="true"]', 'swModalbox');

Beste Grüße

Sebastian

Wo soll ich das einfügen?

Habe es jetzt so:

                    $.publish(‚plugin/swEmotionLoader/onLoadEmotionFinished‘, [me]);
                    /*Modalbox neu initalisieren */
                    StateManager.addPlugin(’*[data-modalbox=„true“]’, ‚swModalbox‘);

Keine Veränderung…

@thering schrieb:

Wo soll ich das einfügen?

Habe es jetzt so:

                    $.publish(‚plugin/swEmotionLoader/onLoadEmotionFinished‘, [me]);
                    /*Modalbox neu initalisieren */
                    StateManager.addPlugin(’*[data-modalbox=„true“]’, ‚swModalbox‘);

Keine Veränderung…

Hallo,

ich habe ja auch nichts von publish geschrieben, sondern das man sich an die subscribe-Methode hängen soll. Dokumenation siehe hier: jQuery plugins and the StateManager .

Und wo? In einer eigenen JavaScript-Datei im eigenen Theme: jQuery plugins and the StateManager .

Beste Grüße

Sebastian

Kannst Du mir mal sagen was genau jetzt genau in meiner eigenen “mb.js” Datei stehen soll?

Wie man eigene css und js Dateien einbindet, weiß ich.

Muss man da auch “appenden” bzw. “prependen”, wenn ja wie?

@thering schrieb:

Kannst Du mir mal sagen was genau jetzt genau in meiner eigenen „mb.js“ Datei stehen soll?

Wie man eigene css und js Dateien einbindet, weiß ich.

Muss man da auch „appenden“ bzw. „prependen“, wenn ja wie?

Hallo,

das lesen der genannten Dokumentation kann ich dir leider nicht abnehmen. Im Bereich „Global jQuery event observer“ steht eigentlich alles drin (Thema subscribe etc.). Um den dort dargestellten Code am besten noch:

(function($, window) {
     var $window = $(window);

     /* JS - CODE */
})(jQuery, window);

machen und meine angesprochenen Code einfügen.

Das Einbinden der JavaScript-Datei steht im Bereich „Adding javascript files to your theme“.

Beste Grüße

Sebastian