Jquery und Mootools verwenden - funktioniert nichts!

  • Hallo,

    ich habe auf meiner Seite ein Jquery-Framework und ein Mootools-Framework. Wie kann ich den Fehler beheben, dass beide Frameworks funktionieren? Kann mir hier jemand weiterhelfen, bzw. kurz erklären, was ich abändern muss, dass es funktioniert?

    Danke! :-)

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • ich kann dir darauf jetzt leider nichts direkt sagen in bezug zu WP, aber meine erfahrung ist: die gehen garnicht paralel zu nutzen.

    problem ist, dass du im JQuery das $ zeichen nutzt $(), aber im MooTools auch. was dann zu einer überschneidung führt und letztendlich zu einem fehler was nichts funktionieren sollte.
    also nur einzelnd verwendbar und nicht gemeinsam. aber normalerweise sollte mit JQuery auch alles lösbar sein, und das sogar recht einfach =)

    ansonsten, um mal zu checken was da für fehler drine sind, könntest du mal Chrome runterladen und die Chrome Fehlerkonsole nutzen. normalerweise filtert die solche fehler sehr schön und schnell raus. versuch wäre es wert.

    liebe grüße =)

  • Für einen solchen Konfliktfall bietet jQuery den noConflict-Modus an.

    Dafür muss nach dem Einbinden der jQuery-Bibliothek jQuery.noConflict(); aufgerufen werden. jQuery ist danach unter einem anderen Namespace ansprechbar. jQuery spricht man nun statt über "$" mit "jQuery" an, MooTools kann weiter mit "$" angesprochen werden.

    Funktioniert gerade im Verhältnis zu MooTools problemlos - auch wenn es in vielen Fällen sinnvoller sein dürfte, alles mit einem Framework umzusetzen.

  • so wies hier steht:

    HTML
    <script type="text/javascript" src="other_lib.js"></script>
    <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript">
     jQuery.noConflict();
      // Code that uses other library's $ can follow here.
    </script>


    other_libs.js ist eben dein mootools.js, dann die jquery.js.
    und bevor du irgendwas in deinem code machst, musst du das $.noConflict(); aufrufen, damit jquery des freigibt. dannach kannst du deinen code schreiben, musst aber um jQuery zu benutzen, und nicht mootools, dann immer ein

    HTML
    jQuery.slideToggle();

    zb benutzen. also für jquery statt dem $ dann einfach das jQuery schreiben. dann geht alles eig wie gewohnt.
    mit mootools kannst du dann dein $ benutzen

  • Das heißt dann, dass ich z.B. diesen Code hier einfügen muss:

    Oder versteh ich da jetzt wieder was falsch? Muss ich in der jquery.js auch entwas ändern, oder macht dass die Funktion automatisch?

  • Ich peil das einfach nicht! :( Hier ist ein Auszug aus meinem Originalcode:


    Wie muss ich das jetzt umbauen? Ich versteh einfach nicht, wohin ich den Code kopieren soll und wo ich überall das "$"-Zeichen ändern soll...

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!