Script.acuol.us framework

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Script.acuol.us framework

    Nabend Jungz ;)

    ich hab mir mal wieder ein projekt vorgenommen und hab mich entschlossen ein paar visuelle effekte mit hilfe des o.g. frameworks zu realisieren.
    testweise habe ich das an einem vorhanden projekt mal getestet. leider hat nicht alles ganz reibungslos so gefunzt wie ich mir das vorgestellt hab.
    deshalb mal ne frage an jeden der damit schonmal gearbeitet hat bzw ein wenig in der materie steckt ;)

    bislang habe ich mir meine ajax funktionen komplett selbst zusammengebastelt.deshalb hab ich wohl atm probleme bei der umsetzung meines vorhabens.

    die effekte kann man ja aufrufen in dem man per js im onclick event folgendes schreibt (z.b.)

    Quellcode

    1. <div onclick="new Effect.toggle('sub','blind');"><div id="sub"></div></div>


    soweit ich das ganze verstanden habe muss aber der ajax request an sich auch noch aufgerufen werden. sonst bleibt das div ja leer und es tut sich nix.
    also wie sollte das ganze realisiert werden das es auch optisch noch stimmt? ich vermute das alle daten schon geladen sein müssen (unsichtbar z.b) und nur per onclick-event dargestellt werden...

    oder den ajax request UND den "effekt-aufruf" im onclick-event zusammen eintragen? also mit semikolon getrennt?

    falls ein konkretes beispiel benötigt wird post ich das

    danke schonma

    mfg da BendIt
    .:Reden Ist Schweigen und Silber Ist Gold:.

    real programmers don't comment their code: if it was hard to write, it should be hard to read!
  • Hi BendIt,
    natürlich könntest du die Ausführungen mit Semikolon staffeln. Aber ohne Framework wirst du sicherlich auch mit dem onreadystatechange bzw. darin mit dem complete status gearbeitet haben.
    Also macht man das hier genauso:

    Quellcode

    1. new Ajax.Updater('sub', 'ajax.php', {
    2. method : 'post',
    3. onComplete : function(){ new Effect.toggle('sub','blind'); },
    4. parameters : 'url=blaa'
    5. });


    bevorzugt steckt man das natürlich in eine eigene Methode.
  • hi d0nut

    ich verstehe...also wäre es vermutlich besser die integrierte funktion zu nehmen (Ajax.Updater)

    werd ich mal testen...

    danke dir ;)

    falls noch was unklar ist meld ich mich wieder ^^


    mfg und schön abend noch da BendIt
    .:Reden Ist Schweigen und Silber Ist Gold:.

    real programmers don't comment their code: if it was hard to write, it should be hard to read!
  • Baby Herman schrieb:



    BendIt schrieb:

    oder den ajax request UND den "effekt-aufruf" im onclick-event zusammen eintragen? also mit semikolon getrennt?


    Ich würds so machen. Wichtig ist dabei nur die Reinfolge, was soll zu erst, der Inhalt oder die Bewegung.


    bis jetzt brachte das leider nicht ein akzeptables ergebniss :( wenn der effekt zuerst kommt aber inhalt fehlt is ja eher suboptimal und andersrum genauso... ich werd das mal testen und mich wieder melden
    (entweder mit feedback oder weiteren fragen ;)

    so long -> BendIt
    .:Reden Ist Schweigen und Silber Ist Gold:.

    real programmers don't comment their code: if it was hard to write, it should be hard to read!
  • Hallo,

    ich hab mich ja nie so richtig mit Scriptacuol anfreunden können und benutze daher jQuery. Da würde das so aussehen:

    Quellcode

    1. $(#divid).click(function() {
    2. $.get('ajax.php', function(strAjaxResult) {
    3. $('#blind).html(strAjaxResult).toggle();
    4. })
    5. })


    Du legst einen Click-Event auf das Element mit der Id "divid". Dieser macht einen Ajax-Request(get oder post), das Ergebnis wird in das Element mit der Id "blind" geschrieben und dann wird das Element getoggelt. Wobei es natürlich noch mehr Effekte gibt.

    Das Ganze liesse sich natürlich noch weiter verfeinern, sollte nur mal als schnelle Beispiel dienen.

    70abc
    We raise hopes, here ... until they're old enough to fend for themselves.
    - Mike Callahan
  • hi mel ;)

    sieht ziemlich komplex aus das ganze... genau sowas brauch ich eigentlich.

    es sollte so variabel wie möglich sein da ich natürlich nicht immer nur einen effekt nutzen möchte.
    ich glaube ich werde mir JQuery mal mit anschauen, vlt ist das ja "besser" als script.aculo.us
    ajf denke ich das ich die ajax request funktion da umbauen müsste um es so felxibel zu machen wie ich es brauche... falls jquery das besser kann werde ich wohl umschwenken.

    ist da zufällig noch eine queue funktion drin? sonst müsste ich das auch anpassen (ich geh mal davon aus das jquery opensource ist!?)

    danke ajf für den hinweis, werd mich da mal erkundigen :D

    thx & mfg da BendIt
    .:Reden Ist Schweigen und Silber Ist Gold:.

    real programmers don't comment their code: if it was hard to write, it should be hard to read!
  • Hallo BendIt,

    ich weis jetzt nicht, was Du unter einer queue-Funktion verstehst, aber zum Einen gibt es sehr viele Erweiterungen für jQuery, zum Andern lässt sich jQuery auch sehr leicht erweitern.
    Schau Dir einfach mal jquery.com an.

    Sehr zu empfehlen sind auch die jQuery-Diskussions-Listen...

    Und ja, jQurey ist OpenSource...
    70abc
    We raise hopes, here ... until they're old enough to fend for themselves.
    - Mike Callahan

  • ich weis jetzt nicht, was Du unter einer queue-Funktion verstehts,
    Bei AJAX ist ja das Problem, das man nicht 2 oder mehrere Abfragen "mit einmal" absetzen kann... also bleibt als lösung entweder der workaround mit settimeout() oder eben mit einer cmd-queue funktion. So eine hab ich mir für mein letztes Projekt (MediAdmin falls dich das interessiert) zusammengebastelt. damit werden zwar auch keine 2 abfragen "parallel" abgearbeitet aber dafür sehr zeitnahe. mit anderen worten, man kann mehrere requests mit einmal absetzen und der queue arbeitet die dann rel schnell nacheinander ab. so das es den anschein erweckt es würden 2 (oder mehr) aktionen parallel aufgerufen.

    und eben diese funktionalität brauch ich unbedingt, da wie gesagt das ganze projekt ausschließlich mit ajax arbeitet (ist so gewollt und funzt auch sehr zuverlässig)

    deshalb auch die frage ob jquery diese funktion bereits integriert hat...

    mfg da BendIt

    [edit]

    Also ich hab mir das mal angeschaut. Sieht imho sehr vielversprechend aus und scheint auch relativ einfach gehalten was den aufruf im code angeht. ich werd das zuhause mal näher testen, und evtl klappt ja auch eine kombination von jquery und script.aculo.us... mal schaun :)

    [/edit]
    .:Reden Ist Schweigen und Silber Ist Gold:.

    real programmers don't comment their code: if it was hard to write, it should be hard to read!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von BendIt ()

  • :| vergess die Idee, die zwei AJAX Frameworks zu kombinieren - sowas ist böse... beide für sich alleine bringen natürlich Queues mit.
    Aber gleichzeitig eingesetzt. Das beißt sich. Auch an anderen Stellen wie z.B. der $() Funktion. Von dem vielen Quelltext mal ganz abgesehen.

    Wenn ich die Wahl habe nutze ich meist auch JQUERY. Aber will man "tolle" Effekte haben ist man eben auf Plugins angewiesen. Und wer weiß ob diese Funktionen dann irgendwann im Core auftauchen und die Plugins nicht mehr funktionieren.

    Hier übrigens ein kleiner Vergleich: webthreads.de/2007/07/css-selektoren-speedtest/
    Bilder
    • speed-vergleich.png

      4,79 kB, 704×148, 277 mal angesehen
  • die vermutung hatte ich auch schon.

    aber anhand des vergleiches ist ja jquery wohl zu bevorzugen.

    was noch interessant wäre, ist ob jquery auch wie script.aculo.us drag & drop und sortierbare listen handlen kann ^

    danke für den hinweis ;)

    mfg da BendIt
    .:Reden Ist Schweigen und Silber Ist Gold:.

    real programmers don't comment their code: if it was hard to write, it should be hard to read!
  • BendIt schrieb:

    was noch interessant wäre, ist ob jquery auch wie script.aculo.us drag & drop und sortierbare listen handlen kann


    Ja, es gibt ein Erweiterung die das kann. Nach dem es sich dabei um ein offizelle Erweiterung handelt, ibt's auch keine Probleme bei Updates...

    70abc
    We raise hopes, here ... until they're old enough to fend for themselves.
    - Mike Callahan
  • Also nach längerer recherche hab ich mich für das EXT Framework + evtl JQUERY per Adapter entschieden. Erste tests liefen auch relativ erfolgreich. Ich werde zwar das komplette frontend neu designen müssen + einiger anpassungen im backend aber das macht ja nüx...

    just 4 nfo ;)

    mfg da BendIt
    .:Reden Ist Schweigen und Silber Ist Gold:.

    real programmers don't comment their code: if it was hard to write, it should be hard to read!
  • Wow, auch wenn mir der Name ein Begriff war, habe ich mir ext gerade zum ersten mal angeschaut. Grafisch echt ne Wucht ;)
    Bin aber mal gespannt wie groß die Seiten am Ende werden. Das Web2.0 soll ja auch ohne Breitband funktionieren.

    Öhm.. aus aktuellen Anlass, weil ich Lust hatte ein SlideShare BB Code zu programmieren, weil ichs vor 5min bei webthreads entdeckt habe und weil es sonst nirgends hinpasst.

    Hier eine SlidShow: JQuery in 15 Minuten
    [slideshare]http://www.slideshare.net/simon/jquery-in-15-minutes[/slideshare]
  • Coole Sache diese SlideShow... :=)

    JA ext ist ziemlich groß!!! (gepackt 3,5B ca und entpackt ca 16MB o,O)

    aber das ist ja das komplette fw... man kann sich das auch selbst zusammenstellen und da redutziert sich die größe der "core" datei, je nach umfang, auf ca 200-300kb
    is zwar auch nicht wenig aber bei DSL2000 als standart sollte das nicht so ins gewicht fallen...

    wenn man natürlich auf die css + img files aus dem framework nicht verzichten will, brauch man natürlich das komplette paket, sprich 16MB aufm server.

    aber is trotz allem sau cool das ganze und funzt teilweise sogar wenn js deaktiviert is (außer ajax natürlich :)

    mfg da BendIt
    .:Reden Ist Schweigen und Silber Ist Gold:.

    real programmers don't comment their code: if it was hard to write, it should be hard to read!