Mootools für 3.3 deaktivieren?


10

Ich muss eine Joomla 2.5-Site auf 3.x aktualisieren

Die Seite benutzt ein Plugin "Mootools deaktivieren"

von diesem Entwickler union-d.ru/

Verwendet jemand dieses Plugin erfolgreich in 3.3 oder kennt er ein Plugin mit ähnlichen Funktionen für 3.3? Danke, der Entwickler beantwortet meine Fragen nicht ...

Verwendet jemand dieses Plugin mit Erfolg auf einer 3.x-Site? Oder kennen Sie ein anderes, ähnliches Plugin, das unter 3.x funktioniert? Vielen Dank!

Antworten:


6

Dieses Tool deaktiviert Mootools bei Bedarf und ist mit Joomla 3 kompatibel: http://extensions.joomla.org/extensions/core-enhancements/performance/mootools/22236

In Joomla 3.0 ist MooTools veraltet, und jQuery ist das Standard-Javascript-Framework. Um MooTools Core-Bibliotheken hinzuzufügen, müssen Sie Folgendes hinzufügen:

JHTML::_('behavior.framework');

Daher hängt es von Ihrer Vorlage / Ihren Erweiterungen ab, ob Mootools geladen ist oder nicht.

In der Google Chrome-Entwicklerkonsole (und wahrscheinlich in Firefoxs Firebug) können Sie überprüfen, ob MooTools mit diesem kleinen Javascript-Code aktiviert ist:

window.MooTools ? alert ("MooTools loaded") : alert("MooTools NOT loaded");

Einige Jahre sind vergangen, aber die Antwort ist immer noch gültig und funktioniert für Joomla 3.8. *
BastianW

2

Dieses Plugin ist speziell für Joomla 2.5 entwickelt, daher kann es bei Verwendung unter Joomla 3.x zu veraltetem Code kommen. Ich persönlich würde die Verwendung von jQuery Easy empfehlen, einem sehr seriösen Plugin. Die Hauptfunktion besteht darin, jQuery auf Ihrer Site zu importieren und sicherzustellen, dass es immer nur einmal und ganz oben in der Skriptliste geladen wird. Es verfügt jedoch auch über eine Funktion zum Deaktivieren von MooTools, sofern dies möglich ist.



0

Wenn Sie ein Plugin entwickeln und das onAfterRenderEreignis NICHT funktioniert, versuchen Sie, das Ereignis onBeforeCompileHeadwie unten gezeigt zu verwenden.

public function onBeforeCompileHead() {
    if ($this->app instanceof JApplicationSite) {
        $doc = JFactory::getDocument();
        $search     = array(
            'jui/js/bootstrap.min.js',
            'mootools-core.js',
            'mootools-more.js',
        );
        foreach ($doc->_scripts as $key => $script) {
            foreach ($search as $findme) {
                if (stristr($key, $findme) !== false) {
                    unset($doc->_scripts[$key]);
                }
            }
        }
    }
}
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.