1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

JQuery in Elementor

Dieses Thema im Forum "Plugins und Widgets" wurde erstellt von becks13, 22. Oktober 2020.

  1. becks13

    becks13 Well-Known Member

    Registriert seit:
    18. April 2013
    Beiträge:
    83
    Zustimmungen:
    1
    Hallo zusammen,

    ich habe das Problem, dass mein JQuery Code nicht ausgeführt wird (direkt in Elementor in einem HTML-Widget eingegeben). Bestimmt für Euch Profis ein Klacks ;) Ich bin da echt nicht so bewandert...

    Folgender Code wird zB ausgeführt (schließt die Akkordeons beim Start):
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Folgender aber nicht:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Da erhalte ich immer die Fehlermeldung:
    Uncaught TypeError: $ is not a function

    Wie müsste es richtig sein?

    Ich danke Euch herzlich, ich kenne mich leider nicht gut damit aus...

    Liebe Grüße
     
  2. danielgoehr

    danielgoehr Well-Known Member

    Registriert seit:
    13. Juli 2016
    Beiträge:
    2.674
    Zustimmungen:
    128
    Ersetze im zweiten Code das $-Zeichen durch "jQuery". Das $-Zeichen darf bei Wordpress in jQuery nicht verwendet werden, da jQuery bei Wordpress normalerweise im noConflict-Modus läuft. Im ersten Fall funktioniert das $-Zeichen nur, weil du es als Parameter an die Funktion übergibst.

    Generell bist du aber auf der sicheren Seite, wenn du grundsätzlich jQuery statt des $-Zeichens verwendest.

    Konkret müsste es also
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    lauten.

    Idealerweise solltest du den Code noch in eine document-ready Funktion "wrappen", wie in deinem ersten Beispiel. Dann kannst du sicher sein, dass dein Element auch existiert, bevor du das Click-Event daran hängst.
     
    #2 danielgoehr, 23. Oktober 2020
    Zuletzt bearbeitet: 23. Oktober 2020
  3. danielgoehr

    danielgoehr Well-Known Member

    Registriert seit:
    13. Juli 2016
    Beiträge:
    2.674
    Zustimmungen:
    128
    Ach ich sehe gerade, der Selektor für dein Element ist auch falsch. Hier fehlt ein #, da es sich um eine id handelt. Ich habe es in meinem Beispiel ergänzt.

    Und (wenn auch leicht OT): Ein a-Element mit leerem href dürfte nicht valide sein. Wenn es ein a-Element sein muss, verwenden eine # mit preventDefault(). Alternativ (einfacher und eigentlich sinnvoller): Verwende <span> statt <a>.
     
    #3 danielgoehr, 23. Oktober 2020
    Zuletzt bearbeitet: 23. Oktober 2020
  4. becks13

    becks13 Well-Known Member

    Registriert seit:
    18. April 2013
    Beiträge:
    83
    Zustimmungen:
    1
    Super, vielen Dank @danielgoehr ! Hat mir absolut weitergeholfen. Sorry für die späte Antwort, habe lange nichts daran getan ;)
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden