Thread Präsentationen ähnlich ppt mit perl? (48 answers)
Opened by tonewheel at 2015-08-11 06:56

jan
 2015-08-16 13:52
#181809 #181809
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
2015-08-16T11:09:32 tonewheel
Erstmal vielen Dank an Dich!


Gern geschehen, solche Sachen machen mir immer Spaß und meine JS-Kenntnisse sind eher zusammengestoppelt aus vielen Einsätzen, wo ich irgendwas brauchte, da ist es immer schön, sie mal anwenden zu können und dabei zu lernen.

Quote
Prinzipiell kann ich das nachvollziehen, aber selbst hätte ich das nicht hinbekommen. Du erzeugst also mit eine "Riesenstring" verschachtelte div container, wobei die untergeordneten divs mit "..._i_o..." indiziert sind


Genau, wobei ich den Riesenstring nur mache, weil ich ein Fauler Hund bin. Der "schönere" Weg wäre wohl (in JS haben sich viele leute angewohnt, jQuery-Objekte mit $irgendwas zu kennzeichnen, daher das $, es hat keine Relevanz wie in Perl)
Code: (dl )
1
2
3
4
$slide = jQuery('<div id="slide_' + i + '"></div>');
for ...
$subslide = jQuery("...");
$slide.append($subslide);


oder so ähnlich.


Quote
d.h. Du fragst sie später über diesen String ab, da indizierung bei divs nicht geht, richtig?


jein und jein. Ja, ich frage sie später über ihre ID ab, abver durch das $("#presenter").append(html); werden sie in's DOM (Document Object Model) eingefügt. Das ist quasi die Objekt-Darstellung dessen, was Du siehst und funktioniert als Tree, wie ein Array Of Arrays (Of Arrays Of Arrays ...). Man kann über Indizes darauf zugreifen, aber das ist immer eher umständlich, lieber via IDs, und jQuery abstrahiert vieles weg und macht's bequem. Auch da könnte man mit Indizes arbeiten, quasi statt #slide_0 und #slide_1 könnte man auch sagen $(".slide")[0] und $(".slide")[1], aber das sieht weniger schön aus, finde ich, und dabei wäre dann auch die Reihenfolge relevant.

Quote
Das heißt auch, dass Du in showSlide() mit allen Funktionen auf den oberen Container Bezug nimmst?


Ja, wobei der dann eben im DOM steckt. Wenn Du im Firefox mal Rechtsklick auf eine Element machst und dann auf "Element untersuchen" klickst, siehst Du im Inspector das DOM.

Quote
Auf was genau bezieht sich $("video").each(function () {...., Wird hier jede html-Zeile nach dem Schlüsselwort "video" durchsucht? Oder explizit, wenn <video src = ...> Inhalt ist?


Grundsätzlich: JS arbeitet nicht auf dem HTML-Sourcecode, es sieht also keinen String.
$("video").each() bezieht sich auf jedes <video>-Element im DOM-Tree und übergibt es an den von mir definierten Callback.

Quote
Ich sehe aber, dass es sich lohnt, sich damit näher zu beschäftigen.


Absolut :)
Zumal JS (und asynchrones allgemein) ja auch immer mehr serverseitig eingesetzt wird.

Quote
Ich frage mal direkt, ob es innerhalb der SubSlides mit wenigen Zeilen möglich ist, noch eine Hintergrundmusik einzufügen (da die SubSlides nur aus Bildern, nicht aus Videos bestehen und auch nur dort Musik abgespielt wird), da ich damit eh überfordert bin. Ansonsten starte ich einen extra Player.


Klar, das geht sicher einfach. Wie wäre es dir da am liebsten? Eine Audiodatei pro Slide? Eine Audiodatei pro Subslide?
BTW, willst Du pro Slide/SubSlide einstellen können, nach wieviel Sekunden es weiter geht? Wäre beides kein Problem...

View full thread Präsentationen ähnlich ppt mit perl?