WBCE CMS – Way Better Content Editing.
Du bist nicht angemeldet.
Seiten: 1
Hallo Leute,
vielleicht was für das WBCE resp. den jQuery Teil von WBCE.
Mit der Hilfe von Stackoverflow und Google hab ich diese kleine jQuery Funktionen gefunden und leicht angepasst. Damit kann man mehrere Scriptdateien nachträglich laden und danach seinen eigenen Code ausführen. Ideal geeignet um zB. im frontend.js ein paar jQuery Plugins nachzuladen. Klar geht es auch ohne diese Funktion, aber der Code wird stark reduziert.
[== JavaScript ==]
$.getMultiScripts = function (scripts, path) {
scripts = $.map(scripts, function (scr) {
return $.getScript((path || '') + scr);
});
scripts.push($.Deferred(function (deferred) {
$(deferred.resolve);
}));
return $.when.apply($, scripts);
};
var scripts = [
'module/foobar/js/jquery.dummy.min.js',
'module/foobar/js/jquery.lorem.min.js',
];
$.getMultiScripts(scripts, WB_URL).done(function () {
// all scripts loaded
$('.foo').dummy();
});Ich werde die Funktion bis auf weiteres standardmässig bei Fraggy v1.3.2 implementieren und für Fraggy Gallery auch gleich nutzen.
Gruss
Beitrag geändert von rjgamer (12.07.2016 16:46:23)
Offline
Ich weiß nicht, ob Du es wußtest, aber es gibt seit sehr langer Zeit die jQuery insert Methode, mit der Du ebenfalls weitere Scripte nachladen kannst. Die Wirkungsweise kannst Du in etlichen Modulen einsehen.
Als Beispiel hier: https://github.com/WBCE/WebsiteBaker_Co … ody.js#L20
Ich fände es jetzt ziemlich kontraproduktiv, wenn in Modulen etwas eingebaut würde, das dann nur mit einem bestimmten Theme funktionieren würde, obwohl es sich vermeiden ließe, wenn man die bisher funktionierende Methode verwendete.
Chris
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Offline
![]()
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
@stefanek
Super, dass du das erwähnst. Ich habe heute eine Möglichkeit gesucht, jquery-ui nachzuladen, wenn nicht schon vorhanden.
Wie würde das mit Query insert funktionieren?
@stefanek
Super, dass du das erwähnst. Ich habe heute eine Möglichkeit gesucht, jquery-ui nachzuladen, wenn nicht schon vorhanden.Wie würde das mit Query insert funktionieren?
Im Backend glaube ich ist die UI stets geladen...
Ich kann mich aber auch täuschen.
Im Prinzip würde es funktionieren wie hier:
http://stackoverflow.com/questions/1653 … -is-loaded
Man fragt nach einer bestimmten UI Komponente (im obigen Fall draggable).
Dein Code könnte dann so aussehen:
[== backend_body.js ==]
if (typeof(jQuery.ui.draggable) == 'undefined'){
// UI draggable is NOT loaded
$.insert(WB_URL+ '/jquery-ui.min.css');
$.insert(WB_URL+ '/include/jquery/jquery-ui.js');
}Wenn's so nicht wirkt, schreib mir PM/Mail, ich schaue es mir genauer an.
Gruß,
Chris
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Ich weiss meine Aussage provoziert, aber die Insert Funktion ist in dieser Form unnötig. Mit $.getScript bietet jQuery die gleiche Lösung von Haus aus. Kann halt sein, dass es 2008 diese Lösung noch nicht gab. Oder bin ich Blind und sehen den Vorteil nicht?
Der Vorteil meiner oberen Funktion ergibt sich, dass schön auf das fertige Laden der Scripts gewartet wird. Manchmal ist nämlich der JS Code schneller ausgeführt als dass das Script geladen wird und dann erscheinen so tolle undefined Meldungen.
Bin zZ. unterwegs und konnte den Code von der Insert Funktion nicht komplet inspizieren.
Wenn keine Einwände würde ich vielleicht gerne die Insert Funktion auffrischen, ohne den Namen zu ändern oder die Funktionalität einzuschränken. Natürlich mit paar Features mehr, wenn möglich.
Aber was meinen die anderen?
Beitrag geändert von rjgamer (12.07.2016 20:14:37)
Offline
Deine Aussage provoziert überhaupt nicht.
getScript kam tatsächlich viel später. Und als es zunächst kam, haben wir die insert Funktion aufrechterhalten weil getScript des öfteren Probleme verursacht hat.
Nichts dagegen, wenn Du die insert Funktion auffrischst.
Mach einfach ordentlich und genügend Tests, sodass Module die es bereits verwenden nicht ausfallen.
Wenn alles funktioniert, denke ich läßt Norbert mit sich reden.
Ich habe bis jetzt sehr viel mit der Insert Funktion in sämtlichen Modulen gearbeitet.
Auch der neue PageTree bedient sich dieser Funktion. "Undefined" Meldungen haben sich in der Praxis bis jetzt nicht ergeben im Zusammenhang damit.
Gruß,
Chris
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Alles klar. Werds mal angucken, bei Bedarf optimieren, testen und für Community Tests dann im Forum reinstellen bevor ich wieder ein Pull Request erstelle 
Offline
Kann mir jemand sagen warum mit jquery-include.js und jquery-insert.js zwei JS Funktionen vorliegen, die genau das gleiche können?
Braucht irgendwer die jquery-include.js?
Offline
Kann mir jemand sagen warum mit jquery-include.js und jquery-insert.js zwei JS Funktionen vorliegen, die genau das gleiche können?
Braucht irgendwer die jquery-include.js?
Historisch gesehen gab es mal jemanden bei den WB Developern, der auf die jquery-include stand. Und so war sie drin.
Ich weiß nicht, ob sie von vielen Modulen verwendet wird. Oder überhaupt welchen.
Ich habe mich damals an die insert Funktion gewöhnt seit dem sie drin war und sah keinen Grund etwas Neues zu nehmen.
Alles klar. Werds mal angucken, bei Bedarf optimieren, testen und für Community Tests dann im Forum reinstellen bevor ich wieder ein Pull Request erstelle
Gute Idee.
Christian
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Hab angefangen. Funktioniert sogar, aber irgendwie werden die Scripts verspätet geladen. Könnt es trotzdem gerne schonmal testen. Einfach die bestehende jquery.insert.js mit der im Anhang ersetzen. Natürlich vorher die Originalversion sichern 
Die jquery.include.js plane ich im gleichen Atemzug zu ersetzen. Wobei auch in diesem Fall die Funktion bestehen bleibt und nur die Logik dahinter aktualisiert wird.
Beitrag geändert von rjgamer (12.07.2016 23:00:25)
Offline
Wenn Du da noch dran arbeitest, spare ich mir das testen.
Lass mich wissen, wenn Du eine Version hast, mit der Du zufrieden bist und nicht eine, an der Du noch was auszusetzen hast.
Es sei denn, Du brachst nen Tipp.
Chris
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Offline
![]()
“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale
Offline
Seiten: 1