Uncaught TypeError: e.indexOf is not a function

  • Joomla Version
    4.3.3
    PHP Version
    PHP 8.0.x
    Hoster
    All-inkl
    Link (URL) zur Seite mit dem Problem
    https://rb.gy/ghu3o

    Hallo,


    wir sind auf ein kleines Problem gestoßen, nachdem wir auf Joomla 4 umgestiegen sind. In der Konsole werden folgende Meldungen angezeigt:


    - Uncaught TypeError: e.indexOf is not a function - jquery.min.js:2:85359

    load jQuery

    <anonymous> https://rb.gy/ghu3o:574


    - Mutations-Ereignisse sollten nicht mehr verwendet werden. Verwenden Sie MutationObserver stattdessen. - main.js:1:23231


    Dann wird noch im Backend eine Warnung angezeigt.


    "Warnung Das Verzeichnis für temporäre Dateien in PHP ist nicht gesetzt


    Dieses Verzeichnis wird zum temporären Speichern von hochgeladenen Dateien benutzt, bevor Joomla! auf die Datei zugreifen kann. Obwohl das temporäre Verzeichnis nicht gesetzt wurde, sollte es in der Regel keine Probleme geben. Wenn es Probleme gibt, dass XML-Dateien (Manifest-Dateien) nicht erkannt oder hochgeladene Dateien nicht gefunden werden, sollte der Wert von „upload_tmp_dir“ in der „php.ini“-Datei angepasst werden."


    Eigentlich ist der Pfad aber korrekt.


    Kann uns jemand helfen, diese Meldungen ohne großen Aufwand zu beseitigen? Abgesehen von diesen Meldungen funktioniert die Seite einwandfrei.


    Wir nutzen

    Hoster: All-inkl.com

    PHP: 8.0,

    Joomla: 4.3.3,

    Gantry 5: (5.5.16),

    Chimera Template: (2.5.0) Rockettheme,

    Regular Labs Quick Index Pro: (3.4.4),

    Regular Labs Tabs & Accordions: (1.3.1),

    Vertical Menu: (4.0.320),

    Akeeba Backup: (9.6.2),

    DOCman: (4.0.20),

    HTTP Header: (4.0.0),

    CookieHint and Consent: (1.4.5)

    Test-Subdomin: https://rb.gy/ghu3o


    Vielen Dank im Voraus für Tipps!

  • m Seitenquelltext sehe ich Zeile 574, auf den die Fehlermeldung verweist.

    Code
    <script type="text/javascript">jQuery(window).load(function(e){jQuery("map").imageMapResize();});</script>

    Entweder lädst du nach Zeile, in der die Datei jquery.js geladen wird noch zusätzlich jquery.migrate.js.


    Oder korrigierst den veralteten Code:

    Code
    <script type="text/javascript">jQuery(window).on("load", function(e){jQuery("map").imageMapResize();});</script>

    Allerdings offen, ob da nicht noch an anderer Stelle weitere, veraltete rumdümpeln.

  • "JQMIGRATE: Migrate is installed, version 3.3.2"

    Ja, aber jetzt lädst du JQuery doppelt (siehe Bild). Das ist nicht so gut bzgl. Performance.


    Joomla hat auch JQuery migrate dabei, aber leider kenne ich dein Template-Framework zu wenig, um einen Tipp geben zu können. Ob das für JQuery den WebAssetManager verwendet oder mit JHtml bzw. HTMLHelper oder ....