Javascript Fehler nur für Nicht-Admins
Eingetragen von fox_01 (2)
am 17.08.2013 - 20:01 Uhr in
am 17.08.2013 - 20:01 Uhr in
Hallo,
ich habe auf einer einzigen Seite einen Javascriptfehler in der Console. Der Fehler tritt interessanterweise nicht mit Standard Admin Konto auf. Alle anderen Konten und Rollen haben diesen Fehler. Auch User meiner Admin Gruppe, welche alle Berechtigungen zugewiese bekommen haben bekommen den Fehler. Ich habe überprüft, dass das Jquery Plugin unter allen Rollen geladen wird.
Der Fehler ist auf Zeile 100 in der Datei aus dem Anhang:
TypeError: elem_launcher.button is not a function
secondary: settings.launcherUISecondaryIconClass
Hier ist der über drupal_add_js selbst hinzugefügt Javascript Teil.
<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function ($) {
Drupal.behaviors.deals179 = {
attach: function (context, settings) {
$("#deals-actions-179").jui_dropdown({
launcher_id: 'launcher179',
launcher_container_id: 'launcher179_container',
menu_id: 'menu179',
containerClass: 'deals-actions-179',
menuClass: 'menu179',
onSelect: function(event, data) {
$("#result").text('index: ' + data.index + ' (id: ' + data.id + ')');
}});
}
};
}(jQuery));
//--><!]]>
</script>
Ich habe außerdem meine aktivierten Module in den Anhang gepackt.
Ich bin über jeden Hinweis dankbar.
Anhang | Größe |
---|---|
jquery.dropdown.txt | 10.04 KB |
aktivierte_Module.txt | 11.84 KB |
- Anmelden oder Registrieren um Kommentare zu schreiben
Das schaut mir vom ersten
am 18.08.2013 - 10:47 Uhr
Das schaut mir vom ersten überlesen / anschauen des Javascripts so aus, als würde das Element für den Button nicht auf der Seite existieren. Die launcher_id muss mit beim Aufruf übergeben werden und natürlich dann auch auf der Seite existieren.
Hast du dies denn schon einmal geprüft?
Zum Testen kannst du dir auch einfach console.log() Befehle in das jQuery Plugin setzen und schauen, ob hier die korrekten Elemente übergeben werden bzw. ob diese überhaupt vorhanden sind.
SteffenR
http://www.twitter.com/_steffenr
Drupal-Initiative e.V.