Da es sich um Notizen handelt, werde ich für jeden Eintrag nur die Titel und grammatikalischen Merkmale auflisten. Ich habe vorerst keine Zeit, detaillierte Erklärungen und ausführbare Beispiele zu schreiben, aber ich werde zusätzlich zur Auflistung relevante Dokumentadressen angeben Browser, die diese Funktion bereits unterstützen, bieten auch alternative/Übergangsimplementierungen für nicht unterstützte Browser. Nun, das war ursprünglich eine Notiz, die ich privat gemacht habe. Als ich den Artikel von Lehrer Lewu das letzte Mal gesehen habe, habe ich zwar gesagt, dass mein aktuelles Alter gerade in die Hochphase des Gedächtnisses eingetreten ist ... aber mein Selbst- Selbstvertrauen braucht immer noch einen Schlag! Als ich zum Beispiel mit anderen darüber diskutierte, was der Clown dem Staatsanwalt im Krankenhaus in „The Dark Knight“ sagte, was ihn in Two-Face verwandelte, konnte ich mich an keine einzige Dialogzeile erinnern und wie die Figur hieß, als Penny Age spielte von Conan in Big Bang Theory S2? „Queen Penelope“, ich war so beeindruckt, als ich es sah, dass ich mich einen Monat später nicht einmal an die Odyssee erinnern konnte. Ich fühle mich immer wohler, wenn ich Notizen hinterlasse ... Ah, ich bin wieder vom Thema abgekommen.
In diesem Artikel wurden einige der wichtigsten (oder relativ beliebten) neuen Standards zusammengestellt. Obwohl es sich bei den meisten davon noch um Entwürfe des W3C handelt und sie sich noch am Anfang der Empfehlungsstufe befinden, sind sie in der neuen Runde sehr gefragt Browser Wars. In der Entwickler-Community sind zahlreiche verwandte Demos und API-Pakete entstanden, und einige sind in die Produktionsumgebung gelangt (z. B. die Google Mail-Offline-Anwendung auf dem iPhone. Tatsächlich denke ich, dass es im heutigen Webbereich darum geht). Der Übergang von der proprietären Technologie des Herstellers zur Produktion von Killeranwendungen wurde erheblich beschleunigt. Liegt das daran, dass die Nachfrage nach Webanwendungen jetzt zu hoch ist ... UPDATE: Als ich gerade einen weichen Artikel in Solidot veröffentlichte, dachte ich plötzlich, wie man dieses Problem ausdrückt: Tatsächlich sind viele Browserhersteller auch browserbasierte Anwendungsentwickler und Webstandardsetzer, genau wie die Ingenieure, die die Bühne bauen, auch Akteure sind Die Bühne und die Regisseure von Dance Moves scheuen keine Mühen, technische Standards zu implementieren, die der Entwicklung von Webanwendungen förderlich sind. Auch wenn es sich noch um W3C-Arbeitsentwürfe handelt, fehlt es dem IE-Team tatsächlich an Motivation. Der Planwirtschaft fehlt die Vitalität XD...
Da es sich um Notizen handelt, werde ich für jeden Eintrag nur den Titel und die grammatikalischen Merkmale auflisten. Ich habe vorerst keine Zeit, detaillierte Erklärungen und ausführbare Beispiele zu schreiben, aber ich werde die entsprechende Dokumentadresse angeben. Zusätzlich zur Auflistung der unterstützten Browser mit dieser Funktion werden auch alternative/übergangsweise Implementierungen für Browser bereitgestellt, die diese Funktion nicht unterstützen.
===================Die Trennlinie, an der der Unsinn endet====================== ==
Medientyperkennung für die gesamte externe Link-CSS-Datei und einen Teil des CSS-Codes. Der Grund für die hohe Beliebtheit liegt offensichtlich in den mobilen Geräten...
w3c-Standards: http://www.w3.org/TR/css3-mediaqueries/
MDC-Dokumentation: https://developer.mozilla.org/En/CSS/Media_queries
Opera-Dokumentation: http ://www.opera.com/docs/specs/css/
Unterstützt: Firefox 3.5, Safari 3, Opera 7
CSS-Verformung, einige Leute verwenden dieses JQuery-Plug-In, um Pseudo-3D-Effekte und Rotationseffekte zu erzielen
w3c-Standard: http://www.w3.org/TR/css3-2d-transforms/
MDC-Dokumentation: https://developer.mozilla.org/En/CSS/CSS_transform_functions
Webkit-Blog Einführung: http://webkit.org/blog/130/css-transforms/
Unterstützung: Firefox 3.5, Safari 3.1
Alternative/Übergang: IE5.5 Matrix Filter http://msdn.microsoft.com/en-us/library/ms533014(VS .85).aspx
Die mit Spannung erwartete CSS-Animation, ein vom Webkit-Team vorgeschlagener Entwurf, implementiert einfache Attributverläufe und Animation definiert komplexere Animationseffekte
w3c-Standard: http://www.w3.org/TR/css3-transitions/
w3c-Standard: http://www.w3.org/TR/css3-animations/
Webkit-Blog-Einführung : http://webkit.org/blog/138/css-animation/
Einführung von Klassenkamerad John: http://ejohn.org/blog/css-animations-and-javascript/
Unterstützung: Safari 3.1
Die Möglichkeit, jede beliebige Schriftart in eine Webseite einzubetten, ist der Traum eines jeden Designers...aber die einzigen hier unterstützten Schriftarten sind TrueType und OpenType
w3c-Standard: http://www.w3.org/TR/css3-fonts/#font-resources
MSDN-Dokumentation: http://msdn.microsoft.com/en-us/library/ms530303( VS.85).aspx
MDC-Dokumentation: https://developer.mozilla.org/en/CSS/@font-face
Unterstützt: Firefox 3.5, Safari 3.1, Opera 10.0, IE4.0
Von ppk-Studenten gepflegte Dokumente: http://www.quirksmode.org/css/contents.html
Von css3.info gepflegte Dokumente: http://www.css3.info/modules/selector-compat/
Eine Testseite: http://westciv.com/iphonetests/
Einfache dauerhafte Speicherung in Form von Schlüssel-Wert-Paaren
w3c-Standard: http://www.w3.org/TR/webstorage/
Von ppk-Klassenkameraden gepflegte Kompatibilitätsliste: http://www.quirksmode.org/dom/html5.html#localstorage
MDC-Dokumentation: https://developer.mozilla.org/en/DOM/Storage
MSDN-Dokumentation: http://msdn.microsoft.com/en-us/library/cc197062(VS.85).aspx
Unterstützt: Firefox 3.5, Safari 4.0, IE 8.0
Verwenden Sie eine Manifestdatei, um statische Ressourcen (Bilder, CSS, JS usw.) für die Offline-Verwendung zwischenzuspeichern, nicht strukturierte Daten
w3c-Standards: http://www.w3.org/TR/offline-webapps/#offline
MDC-Dokumentation: https://developer.mozilla.org/en/Offline_resources_in_Firefox
Unterstützung: Firefox 3.5
Lokale Datenbank, die SQL unterstützt, wurde zuerst von Google Gears implementiert. Der Herausgeber des aktuellen w3c-Entwurfs ist auch ein Google-Ingenieur ... Aber seltsamerweise ist die Gears-API nicht mit dem aktuellen Entwurf kompatibel, den Chrome beibehalten möchte Die mitgelieferten Gears. Die Datenbank-API hat die vom Webkit implementierte HTML5-API gelöscht... Und als Google die Gmail-Offline-Funktion auf dem iPhone implementierte, verwendete es auch die Webkit-API... Das ist wirklich verwirrend...
w3c-Standard: http://www.w3.org/TR/offline-webapps/#sql
Einführung in den Webkit-Blog: http://webkit.org/blog/126/webkit-does-html5- client-side-database-storage/
iphone-Dokumentation: http://developer.apple.com/documentation/iPhone/Conceptual/SafariJSDatabaseGuide/UsingtheJavascriptDatabase/UsingtheJavascriptDatabase.html#//apple_ref/doc/uid/TP40007256-CH3 - SW1
Unterstützung: Safari 3.1
Alternative/Übergang: Gears http://code.google.com/p/gears/wiki/Database2API
Mehrere Threads, komplexe Vorgänge im Hintergrund ausführen, DOM nicht bedienen, Kommunikation zwischen Threads über Nachrichtenereignisse
w3c-Standard: http://www.w3.org/TR/workers/
MDC-Dokument: https://developer.mozilla.org/En/Using_web_workers
Unterstützung: Firefox 3.5
Alternative/Übergang: Gears http://code.google.com/p/gears/wiki/HTML5WorkerProposal
Geo-API
w3c-Standard: http://www.w3.org/TR/geolocation-API/
MDC-Dokumentation: https://developer.mozilla.org/En/Using_geolocation
Unterstützt: Firefox 3.5
Alternative/Übergang: Gears http://code.google.com/p/gears/wiki/GeolocationAPI
Natives Drag-Ereignis
w3c-Standard: http://www.w3.org/TR/html5/editing.html#dnd
MDC-Dokument: https://developer.mozilla.org/En/DragDrop/Drag_and_Drop
apple Dokumentation: http://developer.apple.com/documentation/AppleApplications/Conceptual/SafariJSProgTopics/Tasks/DragAndDrop.html#//apple_ref/doc/uid/30001233
Unterstützt: Firefox 3.5, Safari 2.0, Chrome 1.0, IE 5.0
Der Vorteil der Verwendung von HTML-Tags zum Einbetten von Video und Audio liegt nicht im „Open-Source-Format“, sondern in der „Offenheit“, die es Multimedia ermöglicht, mit anderen Seitenelementen zu interagieren oder Seitentechnologie zum „Mashup“ mit dem Video zu verwenden Art einer zufälligen Kombination Die Fähigkeit, mit RIA zu interagieren, ist der Grundstein für den Wohlstand der Webtechnologie und gleichzeitig das größte Manko geschlossener RIA-Container wie Flash.
MDC-Dokumentation: https://developer.mozilla.org/En/Using_audio_and_video_in_Firefox
Einführung in den Webkit-Blog: http://webkit.org/blog/140/html5-media-support/
Unterstützt: Firefox 3.5, Safari 3.0, Chrome 3.0
Alternative/Übergang: Verschachtelte Einbettung mit Video-Tag http://hacks.mozilla.org/2009/06/html5 - video-fallbacks-markup/
Mozilla wurde von Apple erfunden und erstmals in Dashboards verwendet, der aktuellen Mainstream-JS-Bildtechnologie. Darüber hinaus implementiert das IE-Team bereits viel Arbeit, um Canvas zu unterstützen. Tatsächlich ist die Canvas-API ziemlich niedrig, insbesondere in Bezug auf die Interaktion, sie ist nicht so intuitiv wie SVG, daher gibt es viele Bibliotheken, die sie kapseln
Unterstützt: Firefox 1.5, Safari 2.0, Chrome 1.0, Opera 9.0
Alternative/Übergang: excanvas.js http://code.google.com/p/explorercanvas/
IBM DW-Tutorial: http://www.ibm.com/developerworks/cn/views/xml/tutorials.jsp?cv_doc_id =84896
Unterstützt: Firefox 1.5, Safari 3.0, Chrome 1.0, Opera 9.0
Alternative/Übergang: raphael.js http://raphaeljs.com/
w3c-Standard: http://www.w3.org/TR/XMLHttpRequest2/
MDC-Dokumentation: https://developer.mozilla.org/En/Using_XMLHttpRequest#Monitoring_progress
XDomainRequest (XDR)
MSDN-Dokumentation: http://msdn.microsoft.com/en-us/library/cc288060(VS.85).aspx
Unterstützt: Firefox 3.5 (teilweise implementiert), IE 8.0 (teilweise implementiert)
w3c-Standard: http://www.w3.org/TR/cors/
MDC-Dokument: https://developer.mozilla.org/En/HTTP_Access_Control
Cross-Document Messaging (XDM)
MSDN-Dokumentation: http://msdn.microsoft.com/en-us/library/cc197057(VS.85).aspx
Unterstützt: Firefox 3.5, IE8.0
Firefox und ActionScript3 haben bereits etwas implementiert ... Aber tatsächlich scheint es jetzt, da JSON so beliebt ist, keine Rolle mehr zu spielen, ob es E4X gibt oder nicht ~ (Unsinn, eigentlich wäre es bequem zu schreiben dom-Objekte direkt im JS-Code anstelle von HTML-Strings) Eine Menge)
MDC-Dokumentation: https://developer.mozilla.org/en/E4X
Unterstützung: Firefox 1.5
Native JSON-Unterstützung ist hundertmal schneller und sicherer als eval. Beachten Sie außerdem, dass json2.js von Douglas Crockford ein in js implementierter JS-Interpreter ist und daher sicherer ist
MDC-Dokumentation: http://blog.mozilla.com/webdev/2009/02/12/native-json-in-firefox-31/
MSDN-Dokumentation: http://blogs.msdn.com/ ie/archive/2008/09/10/native-json-in-ie8.aspx
Unterstützung: Firefox 3.5, IE8
Alternative/Übergang: json2.js http://www.json.org/json2.js
Die in js1.6 implementierten Array-Methoden sind hauptsächlich forEach, Map, Filter, die sehr wichtige Methoden in der funktionalen Programmierung sind, sowie Reverse-Query
MDC-Dokumentation: https://developer.mozilla.org/en/New_in_JavaScript_1.6#Array_extras
Unterstützt: Firefox2.0, Safari 3.0, Google Chrome 1.0, Opera 9.5
Alternative/Übergang: Alle können durch Erweiterung von Array.prototype
Unterstützung: Keine
Alternativen/Übergänge: Array.isArray = function(a){ return Object.prototype.toString.call(a) === "[object Array] ”;};
Erklärung von Klassenkamerad John: http://ejohn.org/blog/objectgetprototypeof/
Unterstützung: Firefox3.5
Alternative/Übergang: object.__proto__ oder object.constructor.prototype
Erklärung von Klassenkamerad John: http://ejohn.org/blog/ecmascript-5-objects-and-properties/
Unterstützung: Keine
Ersatz/Übergang: Object.create und Object.keys können selbst implementiert werden
Zugriffskontrolle auf Objekteigenschaften
Erklärung von Klassenkamerad John: http://ejohn.org/blog/ecmascript-5-objects-and-properties/
Unterstützung: Keine
Ersetzung/Übergang: Object.defineProperties entspricht tatsächlich jQuery.extend und wird zur Implementierung von Mixin verwendet
Attributzugriffsmethoden in Python und Ruby
MDC-Dokumentation: https://developer.mozilla.org/en/Core_JavaScript_1.5_Guide/Creating_New_Objects/Defining_Getters_and_Setters
Unterstützt: Firefox 2.0, Safari 3.0, Google Chrome 1.0, Opera 9.5
Alternativen/Übergänge:
Nicht standardmäßige, alte Methode in Firefox 1.5
Unterstützt: Firefox 2.0, Safari 3.0, Google Chrome 1.0, Opera 9.5
Standard
Documentation MSDN : http://msdn.microsoft.com/en-us/library/dd229916(VS.85).aspx
Support : IE8 (ne peut être utilisé qu'avec DOM)
Le mode strict d'ES5 supprime les éléments susceptibles de poser des problèmes dans l'ancienne version, et signalera explicitement les erreurs pour faciliter le débogage
Explication de son camarade de classe John : http://ejohn.org/blog/ecmascript-5-strict-mode-json-and-more/
Support : Aucun
Alternatives/Transitions : ... Commencez à développer de sérieuses habitudes de programmation à partir de maintenant
Lorsque vous passez une référence à une fonction, liez-la
Support : Aucun
Alternatives/Transitions : prototype http://www.prototypejs.org/api/function/bind
Dates au format ISO
Supporté : Aucun
Alternative/Transition : datejs http://code.google.com/p/datejs/
Support : Firefox3.5
Alternative/Transition : Diverses implémentations régulières http://blog.stevenlevithan.com/archives/faster-trim-javascript
===================La ligne de démarcation où les bêtises recommencent================== = =====
En fait, j'ai posté cette chose dans l'espoir de promouvoir une atmosphère d'innovation et de faire comprendre à plus de gens que de nombreuses nouvelles technologies sont entrées dans la phase « pratique ».
Si vous souhaitez simplement créer un jeu Web expérimental ou une application qui ne peut être utilisée que sur une plate-forme spécifique (comme l'iPhone, Greasemonkey), le support du webkit Firefox3.5 est suffisant.
Si vous ne pouvez pas ignorer la plate-forme grand public, il existe de nombreuses technologies qui vous permettent de dégrader gracieusement ou de choisir différentes méthodes pour implémenter des interfaces compatibles.
Si vous ne pouvez pas attendre IE, par exemple, l'héritage et le contrôle d'accès des objets ES5 ont été modifiés, passant des mots-clés à l'ancienne de la période ES4/ActionScript3 (la classe étend le statique privé) à Object.create(p , attrs).defineProperty(o, n, attrs).defineProperties( o, attrs).freeze().getOwnPropertyNames().map(fn), ce n'est pas seulement pour la fraîcheur...
Beaucoup de gens aiment se plaindre "Je n'ai jamais eu la chance d'utiliser HTML5 de ma vie", mais tant que vous détournez le regard de la grande paume sous vos pieds et regardez ailleurs, vous constaterez que le monde est réellement en train de changer. tout le temps XD