Zwei Forscher von Adobe , Dr. Ariel Shamir und Shai Avidan Dr., haben einen einzigartigen Algorithmus für intelligente Größenänderung von Bildern entwickelt. Besonders beeindruckend (siehe Video unten) ist die Fähigkeit, zu verschleiern und völlig verändern ein Bild, dank einer "resize" extrem anspruchsvoll und selektiv. Mit anderen Worten, erlaubt diese Technik Sie ein Bild in einer nicht-linearen Größe. Einige Bereiche des Bildes, dann sind im Maßstab gehalten bietet ein Effekt wirklich neugierig.
Archiv August 2007
Ridimesionamento Dynamic Intelligent Image
Aptana IDE Aktualisierung: 9 Meilensteine
Es ist erhältlich, um die Aktualisierung Aptana IDE , die Web-Entwicklungsumgebung, unterstützt Adobe AIR und Apple iPhone . Zu den neuen Verbesserungen in der PHP-Abschnitt durch die Aktualisierung der Code Assist-Funktionen auf beide Parameter. Auch verbesserte sich die "Farbe" des Codes. Zusätzliche Unterstützung für neueste Ajax-Frameworks einschließlich prototype.js und jQuery . Auch verbessertes Handling von Javascript.

Für die komplette Liste der neuen Features finden Sie hier .
Reflex 1.1: Add Reflexion Effekt auf Bilder
Neue Version 1.1 der Javascript-Bibliothek SLR , mit dem Sie Reflexion Effekte auf Bilder hinzufügen können. Der Vorteil der Verwendung dieser Technik "unauffällig" ist die Geschwindigkeit, mit der man diese Effekte, ohne tatsächlich verbringen viel Zeit in das Erstellen der Image des Nachdenkens hinzufügen können.
Diese Version wurde auf Mozilla Firefox 1.5 getestet +, Opera 9 +, Safari und IE6. Die Mindestgröße für ein Bild ist 32 × 32. Sobald libreiria einschließlich:
1 |
Geben Sie einfach class = "Reflex" auf die Bilder, wo wir wollen, dass die Wirkung an. Durch die Ausnutzung der Eigenschaften der Klasse, können Sie manipulieren die Auswirkungen der Reflexion, die diese ganz besondere Bibliothek ermöglicht. Sie können in der Tat, auch das Bild verzerren, indem 3D-Effekte. Zum Beispiel ist hier, wie verschiedene Funktionen rilfessione hinzu:
1 | "reflex idistance16 iborder2 iheight24" width = "200" alt = "" src = "images/example.jpg" / > < img class = "SLR idistance16 iborder2 iheight24" width = "200" alt = "" src = "images / example.jpg" /> |
Für Details siehe die offizielle Dokumentation .
Auf der gleichen Seite kannst du viele andere Effekte wie Kante, Ecke, glänzend und viele andere, alle mit der Bilder.
Proto.Menu: Kontextmenüs in JavaScript mit Prototype 1.6.0
Proto.Menu ist eine einfache und leicht (2Kb) Lösung für Sie JavaScript, um die Funktionalität zu den Kontextmenüs HMTL-Seiten hinzuzufügen. Diese Bibliothek verwendet die aktuellste Release von Prototype 1.6.0_rc0 . Die wichtigsten Merkmale sind:
- Helligkeit: ~ 2 KB (~ 1,5 MB Version)
- Unauffällig: nicht aufdringlich
- Unterstützt alle Browser
- Anpassbare in Bezug auf Stil-Blatt
- Extrem schnell
Für den Einsatz erforderlich ist:
- prototype.js 1.6.0_rc0
- Bewährt auf den Browser: Firefox 1.5 +, Internet Explorer 6 +, Safari 3 +, Opera 9 +, Netscape Navigator 9 +
Um es zu verwenden einfach den Bibliotheks-und Prototyp proto.menu:
Laden Sie Proto.Menu.js (oder komprimierte Version )
1 2 |
Sie können Ihre eigene CSS-Datei
1 | "stylesheet" href = "Proto.Menu.css" type = "text/css" media = "screen" / > < Link rel = "stylesheet" href = "Proto.Menu.css" type = "text / css" media = "screen" /> |
Und seine Anwendung wirklich einfach ist, erstellen Sie ein Array mit Links zu zeigen:
1 2 3 4 5 6 7 8 9 10 11 | [ var MyLinks = [ : 'Back' , callback : function ( ) { alert ( 'back function called' ) } } , {Name: 'Zurück', Rückruf: function () {alert ('zurück Funktion namens')}}, : 'Forward' , callback : function ( ) { alert ( 'Forward function called' ) } } , {Name: 'Vorwärts', Rückruf: function () {alert ('Forward Funktion namens')}}, true } , {Separator: true}, : 'Reload' , callback : function ( ) { alert ( 'Reload function called' ) } } , {Name: 'Reload', Rückruf: function () {alert ('Reload aufgerufene Funktion')}}, : 'Disabled option' , disabled : true } , {Name: 'Option Deaktiviert', Behinderte: true}, : 'Toggle previous option' , callback : function ( ) { {Name: 'Toggle vorherige Option', Rückruf: function () { = oLinks. find ( function ( l ) { return l. name == 'Disabled option' } ) ; var item = oLinks finden (function (e) {return l name == 'Option Deaktiviert ".}).; = item . disabled == false ? true : false ; .. Eintrag gesperrt = item behinderte == false true: false; }} ] |
Die Menüs werden, indem die Referenz auf das Array erstellt aktiviert:
1 2 3 4 5 6 7 | "text/javascript" > < script type = "text / javascript"> neue Proto.Menu ({ Selektor: '. ContextMenu' / / Kontextmenü wird angezeigt, wenn Element mit Klasse Namen "Kontextmenü" angeklickt werden className: 'myContextMenu', ist / / dies eine Klasse, die zum Menü Behälter angebracht werden (für die CSS-Styling) Menüelemente: MyLinks / / Array von Menüpunkten }) </ script > |
Beachten Sie die Eigenschaft selector zeigt an, dass das Element zum Kontextmenü für diesen Zusammenhang.
Rechts in AS3 klicken: benutzerdefinierte Kontextmenüs
Entfernen Sie das Kontext-Menü oder einfach nur Antworten auf "Rechts-Klick"-Maus ist eine Möglichkeit, Flash Player direkt von ActionScript-Code wird nicht einmal in CS3 erlaubt. Dieses Feature wäre attraktiv für beide Spiele für RIA-Anwendungen. Paulius Uza hat eine Lösung für ActionScript 3 vorgeschlagen (AS3), die im Tandem mit Javascript funktioniert. Dieser "Patch" ist immer noch in der Testphase, weil es in deinem Browser und Flash Player installiert abhängt. Sie können helfen, indem Sie probeweise Anwendung Demo hier .
Es war auch ein Aperitif "Projekt" auf Google Code :
Die Idee ist ziemlich einfach:
1-Verwenden Sie Javascript in den HTML-Container, um auf der Spitze des SWF mit der rechten Maustaste zu deaktivieren.
2 - Capture the Ereignis und übergeben es an einer Funktion, die mit Flash kommuniziert über die externe Schnittstelle
3-In Actionscript die Funktion von JavaScript aufgerufen tut was auch immer Sie Ihre eigenen benutzerdefinierten Kontext-Menü angezeigt werden müssen.
Prototype 1.6.0 Release Candidate
Sie haben soeben die Freigabe Release Candidate von Prototype 1.6.0 mit den neuesten Updates für das gesamte System-API. è stato migliorato e ora fornisce il contesto dell'oggetto che ha rilasciato l'evento. Insbesondere das Verfahren observe Objekt Event wurde verbessert und bietet nun die Hintergrund-Objekt, das das Ereignis ausgegeben. Das "richtige" Verhalten kann überschrieben werden, jedoch. Dies bedeutet, dass standardmäßig this auf das Objekt, das das Ereignis bezieht ausgestellt. Sie führten auch die Möglichkeit, eigene Veranstaltungen zu schaffen. Weitere Verbesserungen umfassen die Function.prototype, die Funktionen von DOM, Ajax, Funktionen, Klassen und mehr. Eine vollständige Liste finden Sie im ChangeLog.
Laden Sie
- Laden Sie Prototyp 1.6.0_rc0
- Holen Sie sich Hilfe Prototype auf den Schienen-Spinoffs Mailingliste oder IRC-Channel # Prototyp
- Interagieren Sie mit dem Core-Team auf dem Prototyp-Core-Mailingliste
- Bug-Reports zu Rails Trac
ActionScript: _parent und Kontrolle Rahmenbedingungen
Als "ausgelöst" ein Ereignis von einem Objekt-Kontext, der das übergeordnete Objekt, die den Umfang aller Variablen repräsentiert ist, wird das Objekt selber. Dieses Merkmal, Eigenschaft der objektorientierten Programmierung werden kann verwirrend verursachen Fehler und Bugs im Code. Darüber hinaus in bestimmten Situationen kann verhindern den Zugriff auf einige Variablen "vor" zur Verfügung.
Zunächst einmal sehen wir ein Feature von ActionScript im Zusammenhang mit Management-Kontext, die, falls enthalten, rette uns dauert ein paar Stunden unnötiger Tests. Als wir mit Grafiken oder einfach MovieClips ineinander verschachtelt zu tun haben, die Eigenschaft _parent , Problemlösungs-Kontext. Zum Beispiel, wenn der MovieClip padre_mc contiente figlio_mc anderen MovieClip und verwenden Sie den folgenden Code:
1 2 3 4 5 | / / Code in padre_mc ( ) { figlio_mc. onRelease = function () { this ) ; // figlio_mc trace (this); / / figlio_mc this . _parent ) ; // padre_mc trace (This. _parent); / / padre_mc } |
Risalisre den "Vater", dann ist klar und direkt.
Mit reinen Klassen, Code-only, oder die Erweiterung der MovieClip-Eigenschaft _parent steht nicht zur Verfügung und könnten die Dinge noch komplizierter! Immaginiiamo zu haben eine Klasse MyClass :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | MovieClip { Klasse MyClass erstreckt MovieClip { function MyClass () { / / Konstruktor } / / myMethod Funktion () { this ) ; // myClass trace (this); / / myClass ; var zahl = 5; ; var cp = this; .... [ un oggetto ] ; var myObject = new [ein Objekt]; ( ) { myObject. onLoad = function () { this ) ; // myObject trace (this); / / myObject cp ) ; // myClass trace (cp); / / myClass } } |
, ovvero il puntatore alla classe MyClass . Der Kontext MyMethod() ist natürlich, this , das ist die Zeiger auf die Klasse MyClass . . Die Variable num , zum Beispiel, hat einen Lebenszyklus innerhalb der Methode eingeschlossen MyMethod() . Es ist daher nur innerhalb der Methode sichtbar und wird am Ausgang zerstört werden. . Das Gleiche gilt für die Variable myObject , die ein Ereignis initialisiert, aber in diesem Fall onLoad . lasciandoci, apparentemente, senza il puntatore alla classe madre myClass . Wenn ausgelöst onLoad() Kontext wird myObject verlassen, scheinbar, ohne die Zeiger auf das übergeordnete Klasse myClass . , ha lo stesso contesto della variabile myObject ! Ein genauerer Blick auf den Code, den wir sehen, dass die Variable cp , in der Methode definiert myMethod() , den gleichen Kontext der Variable hat myObject ! dell'oggetto myObject in quanto condivide con esso lo stesso contesto. In der Tat wird die Variable cp (Klasse Zeiger) sichtbar sein wird innerhalb der Methode onLoad Objekt myObject da es den gleichen Kontext teilt. ha necessità di “vivere” più al lungo del previsto visto che ha “allocato” un evento (di tutto questo se ne occupa Flash a nostra “insaputa”). In der Tat das Verfahren myMethod() nicht nur, weil das Objekt freigegeben wird myObject hat das Bedürfnis, "live" über die länger als erwartet, weil es "zugeteilt" ein Ereignis (all dies ist mit Flash zu tun in unserem "unbekannt").
Beratung
Für Veranstaltungen mit Schaltflächen oder Movieclips verbunden eine gute Gewohnheit wäre, das Formular zu verwenden:
1 2 3 4 5 | my_mc onRelease = myOnRelease.; myOnRelease function () { this ) ; // _root trace (this); / / _root "Click me" ) ; trace ("Klick mich"); } |
An die Stelle der schnelleren und sofortigen:
1 2 3 4 | ( ) { my_mc. onRelease = function () { this ) ; // my_mc trace (this); / / my_mc "Click me" ) ; trace ("Klick mich"); } |
Der Vorteil der Verwendung eines externen Funktion ist es, einen neutralen Kontext und die Möglichkeit, die Funktion unabhängig von der MovieClip, die sie kontrolliert den Zugriff zu haben. Im zweiten Fall, zum Beispiel, wenn Sie zwingen wollen, dass die Ausführung des Codes an den "Klick" der MovieClip verknüpft sollte ich einen Code dieser Art verwenden:
1 | ; . my_mc onRelease (); |
In der Praxis nenne ich die Veranstaltung als ob es ein Verfahren waren. Allerdings habe ich - in der Tat - auf die MovieClip haben my_mc . So oder so, aber ich kann führen Sie den Code direkt aufruft myOnRelease() . Offensichtlich, wie in den Beispielen, Auge in Kontexten. . Im ersten Fall wird der Kontext der myOnRelease() ist die Mutter des Objekts, wo es geschrieben steht, zum Beispiel _root . Im zweiten Fall hingegen ist der Kontext immer die MovieClip my_mc !
Erzwingen einer anderen Kontext
Wir schließen mit einer nützlichen Tricks in vielen Fällen. in grado di forzare un contesto di un metodo o funzione. Flash bietet eine Bibliothek, mx.utils mit einem Objekt Delegate können erzwingen, dass ein Zusammenhang mit einer Methode oder Funktion. Seine Verwendung ist sehr einfach:
1 2 3 4 5 6 7 8 | utils . Delegate ; .. Import mx utils Delegierter; / / // puntatore ad un MovieClip my_mc var, / / Zeiger auf eine MovieClip // un bottone my_btn var, / / a-Taste Funktion myFunction () { this ) ; trace (this); } create ( my_mc , myFunction ) ; my_btn onPress = Delegate erstellt (my_mc, myFunction)..; |
Die Veranstaltung onPress my_btn die Schaltfläche verweist auf eine "neue" Funktion erstellt genau mit dem Kontext my_mc. Wenn Sie auf den Button klicken my_btn, wird der Code ausgeführt in myFunction() wird als Kontext my_mc haben!






Neueste Kommentare
Gabriel : Hallo, interessanter Artikel. Ich bräuchte etwas ähnliches, aber mit einigen Änderungen. In einem ...
Sebastian : Great Aktien - vielen Dank!
Betreff : sehr hilfreich! Ich versuchte es und es ist genau das, was ich brauchte. Jetzt frage ich mich wie bekomme ich ...
Vik : Mit strategischer Hilfe!
Pfeffer : Hallo zusammen, ich weiß nicht, ob Sie einer der Schöpfer des WP-Plugin Bannerize sind. Ich habe ein gesichtet ...