Nach Goethe:
Auch aus den Steinen, die im Weg liegen,
kann man eine schöne Zukunft bausen.
Vorträge können medial und mit angemessene Gerätschaften unterstüzt werden. Geeignet medialen Unterlagen können der aktuellen Vortragspräsentation und auch dem Web-Auftritt dienen.
Beispiele ( Kontexte ): Grafiksoftware ( Kategorie ), Vortragsvisualisierungen, informative Grafiken, Visualisierung , Säulendiagramme, Balken- und Kreis-Diagramme, Diagramme , Tabellenkalkulation, Kalender, Geschäftsgrafiken, Desktop-Publishing, Unternehmenspräsentationen, Organigramme , Organisationsplan, Organisationsdiagramm, Slideshows , Tonbildschau, vertonte Schaubilder, Multivision, Multimedia, usw.
Siehe z.B.Google-Tool https://www.google.com/intl/de/slides/about/
Mediale Darstellungen und Design können übersichtlich, einfach und schlicht sein. Mediale Darstellungen und Design können überladen, aufwendig und verwirrend sein.
Für das Erstellen von Präsentationen gibt es bereits unterstützende Programme, deren Anforderungen an die Bedienbarkeit einfachen/aufwendigen sein können. Bei diesem Projekt geht es um das Entwickeln einer Web-basierte "selfmade App", die dem Erstellen von webtauglichen Präsentationen dient. Projektname sei "myPräsentationApp".
Ideen zur "selfmade App".
a ) Beispiel: Einfaches Präsentieren mit
dl-dt-dd
Liste,
Studienenführung
,
b) Beispiel:
App
für Präsentation-Erstellung ( für Blinde ).
c ) Beispiel: App zum Generieren von Sprüchen ( online, Bild hochladen, mit opacity Text darüber legen ).
d ) Beispiel: App zum Generieren von "Leitgedanken des Tages".
Nähere Hinweise in der Veranstaltung.
Tutorial Webanwendungen ( Wedel ), Trennung von Darstellung und Inhalt ( Wedel ), ...
Beim Rendern einer Seite dienen die CSS-Selektoren ( z.B. #myid, .myclass, dl > dt, ) der Zuordnung von CSS-Elementen zu DOM-Elementen.
Der ECMAScript-Code von "sizzlin = hot selector engine" emuliert die nativ CSS-Selektoren-Zugriffe.
Wie geht das mit den CSS-Selektoren? Einige Weblinks: CSS-Einfuehrung , CSS-Propertys , DOM mit CSS-Selektoren , CSS-Selectoren ( w3schools ).
Wie kann die DOM-Elementeauswahl mit CSS-Selectoren getestet werden?
Siehe z.B.
CSS-Selectoren interaktiv
( Wedel )
Wie kann ein validiertes HTML-Quelltext-Fragment in nativ-DOM-Fragmente transformiert werden? Ein Fragment meint hier einen Quellcode-Sub-Baum und/oder einen nativ-DOM-Sub-Baum ...
<div id="teste_fragment"> <p> Anzeige: An dieses p-Tag wird pre-fragment angefügt:</p> </div> <script> function fragment_erstellen(htmlStr, tgName) { tgName = tgName || "div"; var frag = document.createDocumentFragment(); var temp = document.createElement(tgName); temp.innerHTML = htmlStr; while (temp.firstChild) { frag.appendChild(temp.firstChild); } return frag; } function fragment_anfuegen(selector, frag) { // selector="#id" var ziel = document.querySelector(selector); ziel.appendChild(frag); } var htmlStr = '<pre class="code"> <span class="rot">inner</span>HTML </pre>'; var frag = fragment_erstellen(htmlStr); fragment_anfuegen("#teste_fragment", frag); </script>
Anzeige: An dieses p-Tag wird pre-fragment angefügt:
Einige Weblinks: Documenten Fragmente ( Mozilla ), ...
Es gibt unterschiedliche Möglichkeiten, wie eine ECMAScript-Code-Bibliothek aufgebaut werden kann. Zu Bibliotheken gehört ein "Namensraum". Siehe die einführenden ECMAScript-Beispiele zu Namespaces . Wikipedia: Namensraum , Namensraum bei XML .
Beispiel für den Aufbau einer Bibliothek:
var my_obj = ( function (doc) { "use strict"; var win = doc.defaultView; function is_online() { var p = window.location.protocol; return ((/(http|https)\:/).test(p)) && (!(/file\:/).test(p)); } function get_dom_nodes(selektoren_str, parent_ele) { var par = parent_ele || doc; return par.querySelectorAll(selektoren_str); } function my_fn1(a,b,c) { ... return ... } function my_handler(k) { return function (event) { // test1: alert(event.target.tagName+" "+event.target.dataTd); ... dts = get_dom_nodes("dl > dt"), }; } function init() { ... dts = get_dom_nodes("dl > dt"); ... dts[i].classList.add("dt_passiv"); ... dts[i].addEventListener("click", my_handler (i), false); } return { init: init, is_online: is_online, my_funct1: my_funct1, version: "2017" } ; } (document) );
window.onload = function ( ) { my_obj.init(); };
Für jede Sprache wird eine zugehörige Text-Sammlung angelegt, hier msg_de,
gespeichert im File msg_de.js
msg_de.js wird in die HTML-Seite includiert.
Die Values werden mit JSON.stringify() erstellt.
Aufruf etwa gemäß
JSON.parse( msg_de.umlaute )
var msg_de = (function () { "use strict"; return {/// values erstellt mit JSON.stringify ///////// umlaute: "Deutsche Umlaute sind <em>ä ö ü Ä Ö Ü</em>\n\n",, hinweis1: "<script>\n var i, obj = { }, arr= [ ]; \n</script>", /////////////////////////////////////////////////////// ver: 2017 }; } ());
Viel Freude bei der Ausarbeitung!
Letzter Abgabetermine So 24.10. 12.00 Uhr