VirtueMart E-Mail Pro und VirtueMart Rechnung Pro
Ergebnis 1 bis 3 von 3
  1. #1
    Benutzer
    Registriert seit
    30.11.2012
    Ort
    Gera/Thüringen
    Beiträge
    32

    FancyBox Fehlerverhalten - Ist das die Lösung?

    Hallo Gemeinde,
    hallo Milbo,

    Immer wieder habe ich in meinen VM-Kunden-Projekten massiv Probleme mit der FancyBox. Sowohl die AddToCart-Funktion, also auch die Fragen zum Produkt und die Bild-Popups werden nicht korrekt angezeigt. Die Lösung auf das veraltete FaceBox zurückzugreifen scheint mir nicht zeitgemäß und vermutlich nicht von langer Dauer, da ich damit rechne, dass es in einer der nächsten Versionen von VM eh nicht mehr supported wird. Vermutlich ist aber der einzige Grund, warum FaceBox überhaupt noch Core-Bestandteil ist, weil es diverse Projekte gibt, bei denen FancyBox nicht läuft und deshalb auf FaceBox zurückgegriffen wird.

    (Ich nutze in meinen Projekten J!3.8.2 und VM 3.2.6)

    In diversen VM-Forenbeiträgen konnte ich lesen, dass es einige Anwender gibt, die sich damit rumschlagen, aber keiner eine wirkliche Lösung hat (z.B.: https://forum.virtuemart.de/allgemei...d-access-2569/ oder https://forum.virtuemart.net/index.php?topic=131598.0). Irgendwo konnte ich lesen, dass auch Milbo das Problem noch nicht lösen konnte.

    Im FancyBox-Forum selbst konnte ich nun eine Lösung finden, die es offensichtlich macht, dass der Fehler selbst im FancyBox-Core-Script zu finden ist: https://github.com/nvidoni/fancybox/issues/2.

    Fehlerhaft sind im Script components/com_virtuemart/assets/js/fancybox/jquery.fancybox-1.3.4.js diese beiden Zeilen:
    Code:
    content.get(0).style.removeAttribute('filter');
    wrap.get(0).style.removeAttribute('filter');
    'filter' ist demnach kein Attribut sondern eine CSS-Eigenschaft. Korrekt sollten diese Zeilen lauten:
    Code:
    content.css('filter', 0);
    wrap.css('filter', 0);
    Natürlich nützt es nicht so viel in VM dieses Script zu modifizieren. Statt dessen müsste die Min-Version dieses Scriptes angepasst werden.
    hier müsste
    Code:
    {j.get(0).style.removeAttribute("filter");f.get(0).style.removeAttribute("filter")}
    ersetzt werden durch
    Code:
    {j.css('filter', 0);f.css('filter', 0);}
    Nachdem ich diese Änderungen vorgenommen hatte, waren sofort alle Fehlverhalten bzgl. der FancyBox behoben.

    Leider ist lt. Github selbst in der ScriptVersion jquery.fancybox-1.3.6.js dieser Fehler noch enthalten - seit 5 Jahren.

    Ich hätte jetzt folgende Bitten/Anfragen:
    1. Kann jemand vom VM-CoreTeam (z.B. Milbo) meine obigen Ausführungen prüfen. Ist das eine zuverlässige Lösung, die nicht nur bei meinen Projekten funktioniert?
    2. Wenn mit ja beantwortet: Gibt es eine Möglichkeit die FancyBox-Core-Scripte an der Originalquelle anzupassen (Github)?
    3. ... oder wenigstens in den VM-Core in dieser korrigierten Version einzubinden, damit Updates unsere Änderungen nicht wieder zunichte machen?


    Über ein Feedback würde ich mich sehr freuen.

  2. #2
    Super-Moderator Avatar von Milbo
    Registriert seit
    04.07.2012
    Beiträge
    1.100
    Danke für die gute Recherche. Der Fix sieht gut aus, werd das gleich mal in unsere min Version einbauen.

    Ich habe noch das gefunden
    Code:
    j.empty().removeAttr("filter").css({"border-width":d.padding,width:i.width-d.padding*2,height:e.autoDimensions?"auto":i.height-y-d.padding*2});
    das könnte eventuell auch ein Problem sein, eventuell
    Code:
    j.css('filter', 0);
    j.empty().css({"border-width":d.padding,width:i.width-d.padding*2,height:e.autoDimensions?"auto":i.height-y-d.padding*2});
    Aber eventuell wurde das in dem erwähnten Forumthread bei fancybox bereits diskutiert.
    Project leader VirtueMart
    You may pay someone doing your store or learn it yourself, visit our bronze certification http://extensions.virtuemart.net/cer...ication-detail

  3. #3
    Neuer Benutzer
    Registriert seit
    01.06.2018
    Beiträge
    1
    Salü
    hast du schon versucht in den Einstellungen
    Configuration --> Template von Virtuemart die Einstellung :
    Using the product Scripts zu deaktivieren?
    Dies hat bei mir den gewünschten Erfolg gebracht. Die Bilder stimmen dann sofort.
    Anscheinen beissen sich 2 Skripte.
    Gruss

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •